Record Class IrInstruction.LoadLocal
java.lang.Object
java.lang.Record
io.github.jabrena.juno.ir.IrInstruction.LoadLocal
- All Implemented Interfaces:
IrInstruction
- Enclosing interface:
IrInstruction
public static record IrInstruction.LoadLocal(Value target, int local)
extends Record
implements IrInstruction
-
Nested Class Summary
Nested classes/interfaces inherited from interface IrInstruction
IrInstruction.ArrayLoad, IrInstruction.ArrayStore, IrInstruction.Binary, IrInstruction.BoundsCheck, IrInstruction.Call, IrInstruction.Compare, IrInstruction.Const, IrInstruction.ConstantTableRef, IrInstruction.DoubleBinary, IrInstruction.DoubleCompare, IrInstruction.DoubleConst, IrInstruction.DoubleNegate, IrInstruction.DoubleToFloat, IrInstruction.DoubleToInt, IrInstruction.DoubleToLong, IrInstruction.FloatBinary, IrInstruction.FloatCompare, IrInstruction.FloatConst, IrInstruction.FloatNegate, IrInstruction.FloatToDouble, IrInstruction.FloatToInt, IrInstruction.FloatToLong, IrInstruction.IntArrayConst, IrInstruction.InterfaceCall, IrInstruction.IntrinsicCall, IrInstruction.IntToDouble, IrInstruction.IntToFloat, IrInstruction.IntToLong, IrInstruction.LambdaCall, IrInstruction.LambdaCreate, IrInstruction.LoadField, IrInstruction.LoadLocal, IrInstruction.LoadStatic, IrInstruction.LongBinary, IrInstruction.LongCompare, IrInstruction.LongConst, IrInstruction.LongNegate, IrInstruction.LongShift, IrInstruction.LongToDouble, IrInstruction.LongToFloat, IrInstruction.LongToInt, IrInstruction.NewArray, IrInstruction.NewMultiArray, IrInstruction.NewObject, IrInstruction.NullCheck, IrInstruction.PackLong, IrInstruction.Panic, IrInstruction.StoreField, IrInstruction.StoreLocal, IrInstruction.StoreStatic, IrInstruction.StringConst, IrInstruction.Unary, IrInstruction.UnpackLongModifier and TypeInterfaceDescriptionstatic final recordstatic final recordstatic final recordstatic final recordPanics ifindexis outside[0, length); emitted only whenlengthis known.static final recordA call to a reachable user-defined static method.static final recordstatic final recordstatic final recordThe address of a read-onlystatic finallookup table placed in flash (seeConstantTables).static final recordstatic final recordJVMdcmpl/dcmpg;nanResultis respectively -1 or 1.static final recordstatic final recordstatic final recordstatic final recordstatic final recordstatic final recordstatic final recordJVMfcmpl/fcmpg;nanResultis respectively -1 or 1.static final recordstatic final recordstatic final recordstatic final recordstatic final recordstatic final recordA compiler-created immutable int/reference array, used for enum values and switch maps.static final recordA polymorphic interface call;argumentsstarts with the receiver.static final recordA call to a hardware operation;receiveris present only for instance-style intrinsics.static final recordstatic final recordstatic final recordstatic final recordInvokes a resolved lambda adapter;argumentsstarts with the lambda reference.static final recordMaterializes a lambda function reference, allocating only when captured values need storage.static final recordstatic final recordstatic final recordstatic final recordstatic final recordlcmp: produces a regular int in {-1, 0, 1}, which then flows through ordinary int branch opcodes.static final recordA 64-bitlongvalue, materialized as two 32-bit halves (targetLow/targetHigh) since every JVM local/stack slot and every backendint32_tis 32-bit.static final recordstatic final recordshiftAmountis a plain (32-bit) int, per JVMlshl/lshr/lushrsemantics.static final recordstatic final recordstatic final recordl2i: truncates to the low 32 bits, which is exactlyvalueLowby construction.static final recordDeclares a fixed-size local array;targetbecomes a handle to it.static final recordA fixed-size multidimensional primitive array allocated recursively from the arena.static final recordstatic final recordRuntime null guard used by javac for bound method references.static final recordPacks Juno's two stack/local halves into a native 64-bit call/field/array boundary value.static final recordstatic final recordstatic final recordstatic final recordstatic final recordA UTF-8 string literal materialized as a null-terminated runtime string reference.static final recordstatic final recordSplits a native 64-bit boundary value back into Juno's two stack/local halves. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.intlocal()Returns the value of thelocalrecord component.target()Returns the value of thetargetrecord component.final StringtoString()Returns a string representation of this record class.
-
Constructor Details
-
LoadLocal
Creates an instance of aLoadLocalrecord class.- Parameters:
target- the value for thetargetrecord componentlocal- the value for thelocalrecord component
-
-
Method Details
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
target
Returns the value of thetargetrecord component.- Returns:
- the value of the
targetrecord component
-
local
public int local()Returns the value of thelocalrecord component.- Returns:
- the value of the
localrecord component
-