public static final class AMD64ControlFlow.TableSwitchOp extends AMD64BlockEndOp
LIRInstruction.Alive, LIRInstruction.Def, LIRInstruction.OperandFlag, LIRInstruction.OperandMode, LIRInstruction.State, LIRInstruction.Temp, LIRInstruction.Use
Modifier and Type | Field and Description |
---|---|
protected jdk.vm.ci.meta.Value |
idxScratch |
protected jdk.vm.ci.meta.Value |
index |
protected jdk.vm.ci.meta.Value |
scratch |
static LIRInstructionClass<AMD64ControlFlow.TableSwitchOp> |
TYPE |
ADDRESS_FLAGS, ALLOWED_FLAGS
Constructor and Description |
---|
TableSwitchOp(int lowKey,
LabelRef defaultTarget,
LabelRef[] targets,
jdk.vm.ci.meta.Value index,
Variable scratch,
Variable idxScratch) |
Modifier and Type | Method and Description |
---|---|
void |
emitCode(CompilationResultBuilder crb,
AMD64MacroAssembler masm) |
emitCode
addStackSlotsToTemporaries, destroysCallerSavedRegisters, forEachAlive, forEachAlive, forEachInput, forEachInput, forEachOutput, forEachOutput, forEachRegisterHint, forEachRegisterHint, forEachState, forEachState, forEachState, forEachState, forEachTemp, forEachTemp, getComment, getLIRInstructionClass, getPosition, hashCode, hasOperands, hasState, id, isLoadConstantOp, isMoveOp, isValueMoveOp, name, needsClearUpperVectorRegisters, setComment, setId, setPosition, toString, toString, toStringWithIdPrefix, verify, visitEachAlive, visitEachAlive, visitEachInput, visitEachInput, visitEachOutput, visitEachOutput, visitEachState, visitEachState, visitEachTemp, visitEachTemp
public static final LIRInstructionClass<AMD64ControlFlow.TableSwitchOp> TYPE
protected jdk.vm.ci.meta.Value index
protected jdk.vm.ci.meta.Value idxScratch
protected jdk.vm.ci.meta.Value scratch
public void emitCode(CompilationResultBuilder crb, AMD64MacroAssembler masm)
emitCode
in class AMD64BlockEndOp