class NLIRMove extends NLIRInstruction
block, id, lirMnemonic, reads, write
Constructor and Description |
---|
NLIRMove(NBasicBlock block,
int id,
NLIRInstruction from,
NLIRInstruction to)
Construct an NLIRMove instruction.
|
NLIRMove(NBasicBlock block,
int id,
NRegister from,
NRegister to)
Construct an NLIRMove instruction.
|
Modifier and Type | Method and Description |
---|---|
void |
allocatePhysicalRegisters()
Replace references to virtual registers in this LIR instruction with
references to physical registers.
|
void |
toSpim(PrintWriter out)
Translate this LIR instruction into SPIM and write it out to the
specified output stream.
|
String |
toString()
Return a string representation of this instruction.
|
public NLIRMove(NBasicBlock block, int id, NLIRInstruction from, NLIRInstruction to)
block
- enclosing block.id
- identifier of the instruction.from
- LIR to move from.to
- LIR to move to.public NLIRMove(NBasicBlock block, int id, NRegister from, NRegister to)
block
- enclosing block.id
- identifier of the instruction.from
- register (virtual or physical) to move from.to
- register (virtual or physical) to move to.public void allocatePhysicalRegisters()
NLIRInstruction
allocatePhysicalRegisters
in class NLIRInstruction
public void toSpim(PrintWriter out)
NLIRInstruction
toSpim
in class NLIRInstruction
out
- output stream for SPIM code.public String toString()
NLIRInstruction
toString
in class NLIRInstruction