public abstract class SpillMoveFactoryBase extends Object implements LIRGeneratorTool.SpillMoveFactory
LIRGeneratorTool.SpillMoveFactory
that checks that the instructions created adhere to the
contract of LIRGeneratorTool.SpillMoveFactory
.Modifier and Type | Class and Description |
---|---|
private static class |
SpillMoveFactoryBase.CheckClosure
|
Constructor and Description |
---|
SpillMoveFactoryBase() |
Modifier and Type | Method and Description |
---|---|
private static boolean |
checkResult(LIRInstruction inst,
AllocatableValue result,
Value input)
Checks that the instructions adheres to the contract of
LIRGeneratorTool.SpillMoveFactory . |
LIRInstruction |
createMove(AllocatableValue result,
Value input) |
protected abstract LIRInstruction |
createMoveIntern(AllocatableValue result,
Value input) |
LIRInstruction |
createStackMove(AllocatableValue result,
Value input) |
protected LIRInstruction |
createStackMoveIntern(AllocatableValue result,
Value input) |
public SpillMoveFactoryBase()
public final LIRInstruction createMove(AllocatableValue result, Value input)
createMove
in interface LIRGeneratorTool.SpillMoveFactory
public final LIRInstruction createStackMove(AllocatableValue result, Value input)
createStackMove
in interface LIRGeneratorTool.SpillMoveFactory
protected abstract LIRInstruction createMoveIntern(AllocatableValue result, Value input)
protected LIRInstruction createStackMoveIntern(AllocatableValue result, Value input)
private static boolean checkResult(LIRInstruction inst, AllocatableValue result, Value input)
LIRGeneratorTool.SpillMoveFactory
.