EmitScope scope; // New scope for the method internal static void WalkArg(EmitContext ec, int i, uint vid) { if (ec.Resolving) { Variable v = ec.scope.MarkVariable(vid); v.IsArgument = true; } // Move argument from array to locals, required due to the cache used if (ec.Emitting) { Variable v = ec.scope.GetVariable(vid); ec.EmitLoadArg(i); ec.EmitStoreVar(v); } }
EmitScope scope; // New scope for the method internal static void WalkArg(EmitContext ec, int i, uint vid) { if(ec.Resolving) { Variable v = ec.scope.MarkVariable(vid); v.IsArgument = true; } // Move argument from array to locals, required due to the cache used if(ec.Emitting) { Variable v = ec.scope.GetVariable(vid); ec.EmitLoadArg(i); ec.EmitStoreVar(v); } }