scale.backend.ppc
Class LoadInstruction
java.lang.Object
scale.backend.Instruction
scale.backend.ppc.PPCInstruction
scale.backend.ppc.FrInstruction
scale.backend.ppc.MemoryInstruction
scale.backend.ppc.LoadInstruction
- All Implemented Interfaces:
- java.lang.Cloneable
- Direct Known Subclasses:
- LoadxInstruction
public class LoadInstruction
- extends MemoryInstruction
This is the base class for all PPC Load instructions.
$Id: LoadInstruction.java,v 1.4 2006-10-04 13:59:21 burrill Exp $
Copyright 2005 by the Scale Compiler Group,
Department of Computer Science
University of Massachusetts,
Amherst MA. 01003, USA
All Rights Reserved.
Constructor Summary |
LoadInstruction(int opcode,
int rd,
int ra)
|
LoadInstruction(int opcode,
int rd,
int ra,
Displacement disp)
|
LoadInstruction(int opcode,
int rd,
int ra,
Displacement disp,
int dftn,
boolean macosx)
|
Methods inherited from class scale.backend.Instruction |
clone, copy, ehash, getBBID, getCopyDest, getCopySrc, getExecutionCycles, getFunctionalUnit, getLoopNumber, getNext, getPredicate, getPredicates, getTag, isBranch, isCopy, isLabel, isMandatory, isMarker, isPhi, isPredicated, isPredicatedOnTrue, isPrefetch, isSpillInstruction, isSpillLoadPoint, isSpillStorePoint, markSpillInstruction, nullified, nullify, numPredicates, removePredicates, setBBID, setLoopNumber, setMandatory, setNext, setPredicate, setPredicate, setPredicatedOnTrue, setPredicates, setsSpecialReg, setTag, specifyNotSpillLoadPoint, specifySpillStorePoint |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
LoadInstruction
public LoadInstruction(int opcode,
int rd,
int ra)
- Parameters:
opcode
- is the instruction's opcoderd
- is the destination registerra
- is the source register
LoadInstruction
public LoadInstruction(int opcode,
int rd,
int ra,
Displacement disp)
- Parameters:
opcode
- is the instruction's opcoderd
- is the destination registerra
- is the source registerdisp
- is the displacement
LoadInstruction
public LoadInstruction(int opcode,
int rd,
int ra,
Displacement disp,
int dftn,
boolean macosx)
- Parameters:
opcode
- is the instruction's opcoderd
- is the destination registerra
- is the source registerdisp
- is the displacement
getDestRegister
public int getDestRegister()
- Return the destination register or -1 if none.
- Overrides:
getDestRegister
in class FrInstruction
getSrcRegisters
public int[] getSrcRegisters()
- Return the source registers or
null
if none.
- Overrides:
getSrcRegisters
in class FrInstruction
specifyRegisterUsage
public void specifyRegisterUsage(RegisterAllocator rs,
int index,
int strength)
- Specify the registers used by this instruction.
- Overrides:
specifyRegisterUsage
in class FrInstruction
- Parameters:
rs
- is the register set in useindex
- is an index associated with the instructionstrength
- is the importance of the instruction- See Also:
RegisterAllocator.useRegister(int,int,int)
,
RegisterAllocator.defRegister(int,int)
mods
public boolean mods(int register,
RegisterSet registers)
- Return true if the instruction sets the register.
- Overrides:
mods
in class Instruction
defs
public boolean defs(int register,
RegisterSet registers)
- Return true if the instruction sets the register.
- Overrides:
defs
in class PPCInstruction