public static void DefineBuiltin(GlobalAddress address, Procedure value)
 {
     DefineBuiltin(address, (object)value);
 }
 private void EndEmitPopGlobal(ILGenerator generator, GlobalAddress address)
 {
     generator.Emit(OpCodes.Callvirt, typeof(List <object>).GetMethod("set_Item"));
 }
 public static void DefineBuiltin(GlobalAddress address, object value)
 {
     sGlobal.mVariables[address.index] = value;
 }
 private void EmitLoadGlobal(ILGenerator generator, GlobalAddress address)
 {
     generator.Emit(OpCodes.Ldsfld, typeof(JITInterpreter_DS).GetField("mGlobalVariables"));
     EmitLoadInt(generator, address.index);
     generator.Emit(OpCodes.Callvirt, typeof(List <object>).GetMethod("get_Item"));
 }
 private void BeginEmitPopGlobal(ILGenerator generator, GlobalAddress address)
 {
     generator.Emit(OpCodes.Ldsfld, typeof(JITInterpreter_DS).GetField("mGlobalVariables"));
     EmitLoadInt(generator, address.index);
 }
 static public void DefineBuiltin(GlobalAddress address, Procedure value)
 {
     DefineBuiltin(address, (object)value);
 }
 static public void DefineBuiltin(GlobalAddress address, object value)
 {
     sGlobal.mVariables[address.index] = value;
 }
 private void EndEmitPopGlobal(ILGenerator generator, GlobalAddress address)
 {
     generator.Emit(OpCodes.Callvirt, typeof(List<object>).GetMethod("set_Item"));
 }
 private void EmitLoadGlobal(ILGenerator generator, GlobalAddress address)
 {
     generator.Emit(OpCodes.Ldsfld, typeof(JITInterpreter_DS2).GetField("mGlobalVariables"));
     EmitLoadInt(generator, address.index);
     generator.Emit(OpCodes.Callvirt, typeof(List<object>).GetMethod("get_Item"));
 }
 private void BeginEmitPopGlobal(ILGenerator generator, GlobalAddress address)
 {
     generator.Emit(OpCodes.Ldsfld, typeof(JITInterpreter_DS2).GetField("mGlobalVariables"));
     EmitLoadInt(generator, address.index);
 }