| 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectscale.backend.Instruction
scale.backend.alpha.MemoryInstruction
scale.backend.alpha.StoreInstruction
public class StoreInstruction
This class represents Alpha store instructions.
$Id: StoreInstruction.java,v 1.23 2005-02-07 21:27:21 burrill Exp $
 Copyright 2005 by the Scale Compiler Group,
 Department of Computer Science
 University of Massachusetts,
 Amherst MA. 01003, USA
 All Rights Reserved.
| Field Summary | 
|---|
| Fields inherited from class scale.backend.alpha.MemoryInstruction | 
|---|
displacement, opcode, ra, rb, relocType | 
| Constructor Summary | |
|---|---|
StoreInstruction(int opcode,
                 int ra,
                 int rb)
 | 
|
StoreInstruction(int opcode,
                 int ra,
                 int rb,
                 Displacement displacement)
 | 
|
StoreInstruction(int opcode,
                 int ra,
                 int rb,
                 Displacement displacement,
                 int relocType)
 | 
|
| Method Summary | |
|---|---|
static int | 
created()
Return the number of instances of this class created.  | 
 boolean | 
defs(int register,
     RegisterSet registers)
Return true if the instruction sets the register.  | 
 boolean | 
independent(Instruction inst,
            RegisterSet registers)
Return true if this instruction is independent of the specified instruction.  | 
 boolean | 
isStore()
Return true if this is a store-into- memory instruction.  | 
 boolean | 
mods(int register,
     RegisterSet registers)
Return true if the instruction sets the register.  | 
 void | 
nullify(RegisterSet rs)
Mark the instruction as no longer needed.  | 
 void | 
remapDestRegister(int oldReg,
                  int newReg)
Map the registers defined in the instruction as destinations to the specified register.  | 
 void | 
remapSrcRegister(int oldReg,
                 int newReg)
Map the registers used in the instruction as sources to the specified register.  | 
 void | 
specifyRegisterUsage(RegisterAllocator rs,
                     int index,
                     int strength)
Specify the registers used by this instruction.  | 
 boolean | 
uses(int register,
     RegisterSet registers)
Return true if the instruction uses the register.  | 
| Methods inherited from class scale.backend.alpha.MemoryInstruction | 
|---|
assembler, getDisplacement, getExecutionCycles, getFunctionalUnit, getOpcode, getRa, getRb, getRelocType, instructionSize, remapRegisters, setDisplacement, setRb, toString | 
| Methods inherited from class scale.backend.Instruction | 
|---|
canBeDeleted, clone, copy, ehash, getBBID, getCopyDest, getCopySrc, getDestRegister, getLoopNumber, getNext, getPredicate, getPredicates, getSrcRegisters, getTag, isBranch, isCopy, isLabel, isLoad, isMandatory, isMarker, isPhi, isPredicated, isPredicatedOnTrue, isPrefetch, isSpillInstruction, isSpillLoadPoint, isSpillStorePoint, markSpillInstruction, nullified, 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 | 
| Constructor Detail | 
|---|
public StoreInstruction(int opcode,
                        int ra,
                        int rb)
public StoreInstruction(int opcode,
                        int ra,
                        int rb,
                        Displacement displacement)
public StoreInstruction(int opcode,
                        int ra,
                        int rb,
                        Displacement displacement,
                        int relocType)
| Method Detail | 
|---|
public static int created()
public void remapSrcRegister(int oldReg,
                             int newReg)
remapSrcRegister in class MemoryInstructionoldReg - is the previous source registernewReg - is the new source register
public void remapDestRegister(int oldReg,
                              int newReg)
remapDestRegister in class MemoryInstructionoldReg - is the previous destination registernewReg - is the new destination registerpublic boolean isStore()
isStore in class Instruction
public void specifyRegisterUsage(RegisterAllocator rs,
                                 int index,
                                 int strength)
specifyRegisterUsage in class Instructionrs - is the register set in useindex - is an index associated with the instructionstrength - is the importance of the instructionRegisterAllocator.useRegister(int,int,int), 
RegisterAllocator.defRegister(int,int)
public boolean uses(int register,
                    RegisterSet registers)
uses in class Instruction
public boolean mods(int register,
                    RegisterSet registers)
mods in class Instruction
public boolean independent(Instruction inst,
                           RegisterSet registers)
independent in class MemoryInstructioninst - is the specified instruction
public boolean defs(int register,
                    RegisterSet registers)
defs in class Instructionpublic void nullify(RegisterSet rs)
nullify in class Instruction
  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||