org.jikesrvm.compilers.opt.ir.ia32
Class MachineSpecificIRIA
java.lang.Object
org.jikesrvm.compilers.opt.ir.MachineSpecificIR
org.jikesrvm.compilers.opt.ir.ia32.MachineSpecificIRIA
- Direct Known Subclasses:
- MachineSpecificIRIA.EM64T, MachineSpecificIRIA.IA32
public abstract class MachineSpecificIRIA
- extends MachineSpecificIR
Wrappers around IA32-specific IR common to both 32 & 64 bit
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MachineSpecificIRIA
public MachineSpecificIRIA()
isConditionOperand
public boolean isConditionOperand(Operand operand)
- Specified by:
isConditionOperand
in class MachineSpecificIR
mutateMIRCondBranch
public void mutateMIRCondBranch(Instruction cb)
- Specified by:
mutateMIRCondBranch
in class MachineSpecificIR
isHandledByRegisterUnknown
public boolean isHandledByRegisterUnknown(char opcode)
- Specified by:
isHandledByRegisterUnknown
in class MachineSpecificIR
isAdviseESP
public boolean isAdviseESP(Operator operator)
- Overrides:
isAdviseESP
in class MachineSpecificIR
isFClear
public boolean isFClear(Operator operator)
- Overrides:
isFClear
in class MachineSpecificIR
isFNInit
public boolean isFNInit(Operator operator)
- Overrides:
isFNInit
in class MachineSpecificIR
isBURSManagedFPROperand
public boolean isBURSManagedFPROperand(Operand operand)
- Overrides:
isBURSManagedFPROperand
in class MachineSpecificIR
getBURSManagedFPRValue
public int getBURSManagedFPRValue(Operand operand)
- Overrides:
getBURSManagedFPRValue
in class MachineSpecificIR
mutateFMOVs
public boolean mutateFMOVs(LiveIntervalElement live,
Register register,
int dfnbegin,
int dfnend)
- Mutate FMOVs that end live ranges
- Overrides:
mutateFMOVs
in class MachineSpecificIR
- Parameters:
live
- The live interval for a basic block/reg pairregister
- The register for this live intervaldfnbegin
- The (adjusted) begin for this intervaldfnend
- The (adjusted) end for this interval
rewriteFPStack
public void rewriteFPStack(IR ir)
- Rewrite floating point registers to reflect changes in stack
height induced by BURS.
Side effect: update the fpStackHeight in MIRInfo
- Overrides:
rewriteFPStack
in class MachineSpecificIR