public final class AArch64ArrayIndexOfOp extends AArch64LIRInstruction
LIRInstruction.Alive, LIRInstruction.Def, LIRInstruction.OperandFlag, LIRInstruction.OperandMode, LIRInstruction.State, LIRInstruction.Temp, LIRInstruction.Use| Modifier and Type | Field and Description |
|---|---|
protected AllocatableValue |
arrayLengthValue |
protected AllocatableValue |
arrayOffsetValue |
protected AllocatableValue |
arrayPtrValue |
protected AllocatableValue |
fromIndexValue |
protected AllocatableValue |
resultValue |
protected AllocatableValue[] |
searchValues |
protected AllocatableValue |
temp1 |
protected AllocatableValue |
temp2 |
protected AllocatableValue |
temp3 |
protected AllocatableValue |
temp4 |
protected AllocatableValue |
temp5 |
static LIRInstructionClass<AArch64ArrayIndexOfOp> |
TYPE |
protected AllocatableValue |
vectorTemp1 |
protected AllocatableValue |
vectorTemp2 |
protected AllocatableValue |
vectorTemp3 |
protected AllocatableValue |
vectorTemp4 |
protected AllocatableValue |
vectorTemp5 |
protected AllocatableValue |
vectorTemp6 |
ADDRESS_FLAGS, ALLOWED_FLAGS| Constructor and Description |
|---|
AArch64ArrayIndexOfOp(int arrayBaseOffset,
JavaKind valueKind,
boolean findTwoConsecutive,
LIRGeneratorTool tool,
AllocatableValue result,
AllocatableValue arrayPtr,
AllocatableValue arrayOffset,
AllocatableValue arrayLength,
AllocatableValue fromIndex,
AllocatableValue[] searchValues) |
| Modifier and Type | Method and Description |
|---|---|
void |
emitCode(CompilationResultBuilder crb,
AArch64MacroAssembler masm) |
emitCodeaddStackSlotsToTemporaries, 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, visitEachTemppublic static final LIRInstructionClass<AArch64ArrayIndexOfOp> TYPE
protected AllocatableValue resultValue
protected AllocatableValue arrayPtrValue
protected AllocatableValue arrayOffsetValue
protected AllocatableValue arrayLengthValue
protected AllocatableValue fromIndexValue
protected AllocatableValue[] searchValues
protected AllocatableValue temp1
protected AllocatableValue temp2
protected AllocatableValue temp3
protected AllocatableValue temp4
protected AllocatableValue temp5
protected AllocatableValue vectorTemp1
protected AllocatableValue vectorTemp2
protected AllocatableValue vectorTemp3
protected AllocatableValue vectorTemp4
protected AllocatableValue vectorTemp5
protected AllocatableValue vectorTemp6
public AArch64ArrayIndexOfOp(int arrayBaseOffset,
JavaKind valueKind,
boolean findTwoConsecutive,
LIRGeneratorTool tool,
AllocatableValue result,
AllocatableValue arrayPtr,
AllocatableValue arrayOffset,
AllocatableValue arrayLength,
AllocatableValue fromIndex,
AllocatableValue[] searchValues)
public void emitCode(CompilationResultBuilder crb, AArch64MacroAssembler masm)
emitCode in class AArch64LIRInstruction