Enum Class Instruction.Argument.Kind
- All Implemented Interfaces:
Serializable, Comparable<Instruction.Argument.Kind>, Constable
- Enclosing class:
Instruction.Argument
Represents the kind of an
Instruction.Argument
.- Since:
- 24.2
-
Nested Class Summary
Nested classes/interfaces inherited from class Enum
Enum.EnumDesc<E>
-
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionA branch profile.A bytecode index.A constant value.An integer value.The unique index of a local variable.The logical frame offset of a local variable.A node profile.ATagTreeNode
. -
Method Summary
Modifier and TypeMethodDescriptionstatic Instruction.Argument.Kind
Returns the enum constant of this class with the specified name.static Instruction.Argument.Kind[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
CONSTANT
A constant value. Typically, constants are used to encodeConstantOperand
and LoadConstant builtin operations.- Since:
- 24.2
- See Also:
-
BYTECODE_INDEX
A bytecode index. Typically, bytecode indices are used to encode branch targets or the locations of child instructions.- Since:
- 24.2
- See Also:
-
INTEGER
An integer value. Typically, integer arguments are used to encode argument indices and other integer constants.- Since:
- 24.2
- See Also:
-
LOCAL_OFFSET
The logical frame offset of a local variable. Ifblock scoping
is enabled, multiple locals can share an offset; otherwise, a local's offset is the same as its index. Typically, local offset arguments are used to encode local variable metadata in local variable instructions.The local offset does not represent a frame index that can be used to directly access locals from the frame. Instead, use local accessor instructions,
LocalAccessor
operands, or the helper methods defined by theBytecodeNode
.- Since:
- 24.2
- See Also:
-
LOCAL_INDEX
The unique index of a local variable. Typically, local index arguments are used to encode local variable metadata in local variable instructions.- Since:
- 24.2
- See Also:
-
NODE_PROFILE
A node profile. Typically, node profile arguments are used to encode cached nodes for user-definedoperations
.- Since:
- 24.2
- See Also:
-
BRANCH_PROFILE
A branch profile. Typically, branch profiles are used to profile the outcomes of conditional branch instructions.- Since:
- 24.2
- See Also:
-
TAG_NODE
ATagTreeNode
. Typically, tag tree nodes are used to represent nodes in the logical tag tree defined by Tag operations.
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
-