2 // Mono.ILASM.MethodInstr
5 // Jackson Harper (Jackson@LatitudeGeo.com)
7 // (C) 2003 Jackson Harper, All rights reserved
14 namespace Mono.ILASM {
16 public class MethodInstr : IInstr {
18 private PEAPI.MethodOp op;
19 private BaseMethodRef operand;
21 public MethodInstr (PEAPI.MethodOp op, BaseMethodRef operand, Location loc)
25 this.operand = operand;
27 if (op == PEAPI.MethodOp.newobj || op == PEAPI.MethodOp.callvirt)
28 operand.CallConv |= PEAPI.CallConv.Instance;
31 public override void Emit (CodeGen code_gen, MethodDef meth,
32 PEAPI.CILInstructions cil)
34 operand.Resolve (code_gen);
35 cil.MethInst (op, operand.PeapiMethod);