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
);