Package jminusminus

Class NLIRArithmetic

java.lang.Object
jminusminus.NLIRInstruction
jminusminus.NLIRArithmetic

class NLIRArithmetic extends NLIRInstruction
LIR instruction corresponding to the JVM arithmetic instructions.
  • Constructor Details

    • NLIRArithmetic

      public NLIRArithmetic(NBasicBlock block, int id, int opcode, NLIRInstruction lhs, NLIRInstruction rhs)
      Constructs an NLIRArithmetic object.
      Parameters:
      block - enclosing block.
      id - identifier of the instruction.
      opcode - opcode for the arithmetic operator.
      lhs - LIR for lhs.
      rhs - LIR for rhs.
  • 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.