Package jminusminus

Class NLIRInvoke


class NLIRInvoke extends NLIRInstruction
LIR instruction representing method invocation instructions in JVM.
  • 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 class NLIRInstruction
    • toSpim

      public void toSpim(PrintWriter out)
      Translates this LIR instruction into SPIM and writes it out to the specified output stream.
      Overrides:
      toSpim in class NLIRInstruction
      Parameters:
      out - output stream for SPIM code.
    • toString

      public String toString()
      Returns a string representation of this instruction.
      Overrides:
      toString in class NLIRInstruction
      Returns:
      a string representation of this instruction.