/// <summary> /// Lays out all parameters of the method. /// </summary> /// <param name="compiler">The method compiler providing the parameters.</param> private void LayoutParameters(BaseMethodCompiler compiler) { List<Operand> paramOps = new List<Operand>(); int offset = 0; if (compiler.Method.Signature.HasThis || compiler.Method.Signature.HasExplicitThis) ++offset; for (int i = 0; i < compiler.Method.Parameters.Count + offset; ++i) paramOps.Add(compiler.GetParameterOperand(i)); LayoutVariables(paramOps, callingConvention, callingConvention.OffsetOfFirstParameter, -1); }