Package jminusminus
Class NLIRInvoke
java.lang.Object
jminusminus.NLIRInstruction
jminusminus.NLIRInvoke
LIR instruction representing method invocation instructions in JVM.
-
Field Summary
Fields inherited from class jminusminus.NLIRInstruction
block, id, lirMnemonic, reads, write
-
Constructor Summary
ConstructorDescriptionNLIRInvoke
(NBasicBlock block, int id, int opcode, String target, String name, ArrayList<NRegister> arguments, String sType, String lType) Constructs an NHIRInvoke object. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Replace references to virtual registers in this LIR instruction with references to physical registers.void
toSpim
(PrintWriter out) Translates this LIR instruction into SPIM and writes it out to the specified output stream.toString()
Returns a string representation of this instruction.
-
Constructor Details
-
NLIRInvoke
public NLIRInvoke(NBasicBlock block, int id, int opcode, String target, String name, ArrayList<NRegister> arguments, String sType, String lType) Constructs an NHIRInvoke object.- Parameters:
block
- enclosing block.id
- identifier of the instruction.opcode
- opcode of the JVM instruction.target
- target of the method.name
- name of the method.arguments
- list of register storing the of arguments for the method.sType
- return type (short name) of the method.lType
- return type (long name) of the method.
-
-
Method Details
-
allocatePhysicalRegisters
public void allocatePhysicalRegisters()Replace references to virtual registers in this LIR instruction with references to physical registers.- Overrides:
allocatePhysicalRegisters
in classNLIRInstruction
-
toSpim
Translates this LIR instruction into SPIM and writes it out to the specified output stream.- Overrides:
toSpim
in classNLIRInstruction
- Parameters:
out
- output stream for SPIM code.
-
toString
Returns a string representation of this instruction.- Overrides:
toString
in classNLIRInstruction
- Returns:
- a string representation of this instruction.
-