Пример #1
0
 static AstMipsGenerator()
 {
     for (var n = 0; n < 32; n++)
     {
         GprCache[n] = Ast.FieldAccess(Ast.CpuThreadStateExpr,
                                       CpuThreadStateType.GetField(CpuThreadState.GprNames[n]));
     }
 }
Пример #2
0
        private AstNodeExprLValue Reg(string regName)
        {
#if true
            if (RegCache.ContainsKey(regName))
            {
                return(RegCache[regName]);
            }
            var fieldInfo = CpuThreadStateType.GetField(regName);
            RegCache[regName] = Ast.FieldAccess(Ast.CpuThreadStateExpr, fieldInfo, regName);
            return(RegCache[regName]);
#else
            return(ast.FieldAccess(ast.CpuThreadState, RegName));
#endif
        }