public class org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator extends org.graalvm.compiler.core.aarch64.AArch64LIRGenerator implements org.graalvm.compiler.hotspot.HotSpotLIRGenerator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator
super_class: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator
{
final org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config;
descriptor: Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
flags: (0x0010) ACC_FINAL
private org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder debugInfoBuilder;
descriptor: Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.compiler.lir.LIRFrameState currentRuntimeCallInfo;
descriptor: Lorg/graalvm/compiler/lir/LIRFrameState;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.compiler.asm.Label label;
descriptor: Lorg/graalvm/compiler/asm/Label;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(org.graalvm.compiler.hotspot.meta.HotSpotProviders, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig, org.graalvm.compiler.lir.gen.LIRGenerationResult);
descriptor: (Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
new org.graalvm.compiler.core.aarch64.AArch64LIRKindTool
dup
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRKindTool.<init>:()V
new org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
dup
invokespecial org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.<init>:()V
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMoveFactory
dup
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMoveFactory.<init>:()V
aload 1
aload 2
aload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.<init>:(Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 providers Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
0 2 2 config Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
0 2 3 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
MethodParameters:
Name Flags
providers
config
lirGenRes
protected void <init>(org.graalvm.compiler.core.common.spi.LIRKindTool, org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory, org.graalvm.compiler.hotspot.meta.HotSpotProviders, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig, org.graalvm.compiler.lir.gen.LIRGenerationResult);
descriptor: (Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 1
aload 2
aload 3
aload 4
aload 6
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.<init>:(Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
1: aload 0
aload 5
putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
2: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 3 1 lirKindTool Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
0 3 2 arithmeticLIRGen Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
0 3 3 moveFactory Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
0 3 4 providers Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
0 3 5 config Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
0 3 6 lirGenRes Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
MethodParameters:
Name Flags
lirKindTool
arithmeticLIRGen
moveFactory
providers
config
lirGenRes
public org.graalvm.compiler.hotspot.meta.HotSpotProviders getProviders();
descriptor: ()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.getProviders:()Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
checkcast org.graalvm.compiler.hotspot.meta.HotSpotProviders
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
public boolean needOnlyOopMaps();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
protected void emitForeignCallOp(org.graalvm.compiler.core.common.spi.ForeignCallLinkage, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value[], jdk.vm.ci.meta.Value[], org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=9, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 5
putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.currentRuntimeCallInfo:Lorg/graalvm/compiler/lir/LIRFrameState;
1: aload 1
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Call.isNearCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;)Z
ifeq 4
2: aload 0
new org.graalvm.compiler.lir.aarch64.AArch64Call$DirectNearForeignCallOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.label:Lorg/graalvm/compiler/asm/Label;
invokespecial org.graalvm.compiler.lir.aarch64.AArch64Call$DirectNearForeignCallOp.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/asm/Label;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.aarch64.AArch64Call$DirectFarForeignCallOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.label:Lorg/graalvm/compiler/asm/Label;
invokespecial org.graalvm.compiler.lir.aarch64.AArch64Call$DirectFarForeignCallOp.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/asm/Label;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 6 1 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
0 6 2 result Ljdk/vm/ci/meta/Value;
0 6 3 arguments [Ljdk/vm/ci/meta/Value;
0 6 4 temps [Ljdk/vm/ci/meta/Value;
0 6 5 info Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
linkage
result
arguments
temps
info
public void emitTailcall(jdk.vm.ci.meta.Value[], jdk.vm.ci.meta.Value);
descriptor: ([Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 args [Ljdk/vm/ci/meta/Value;
0 1 2 address Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
args
address
public void emitCCall(long, jdk.vm.ci.code.CallingConvention, jdk.vm.ci.meta.Value[]);
descriptor: (JLjdk/vm/ci/code/CallingConvention;[Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 4
arraylength
anewarray jdk.vm.ci.meta.Value
astore 5
start local 5 1: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
aload 3
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.callsMethod:(Ljdk/vm/ci/code/CallingConvention;)V
2: iconst_0
istore 6
start local 6 3: goto 9
4: StackMap locals: jdk.vm.ci.meta.Value[] int
StackMap stack:
aload 4
iload 6
aaload
astore 7
start local 7 5: aload 3
iload 6
invokevirtual jdk.vm.ci.code.CallingConvention.getArgument:(I)Ljdk/vm/ci/meta/AllocatableValue;
astore 8
start local 8 6: aload 0
aload 8
aload 7
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
7: aload 5
iload 6
aload 8
aastore
end local 8 end local 7 8: iinc 6 1
StackMap locals:
StackMap stack:
9: iload 6
aload 4
arraylength
if_icmplt 4
end local 6 10: aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
lload 1
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitLoadConstant:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
astore 6
start local 6 11: aload 0
new org.graalvm.compiler.lir.aarch64.AArch64CCall
dup
aload 3
invokevirtual jdk.vm.ci.code.CallingConvention.getReturn:()Ljdk/vm/ci/meta/AllocatableValue;
aload 6
aload 5
invokespecial org.graalvm.compiler.lir.aarch64.AArch64CCall.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
12: return
end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 13 1 address J
0 13 3 nativeCallingConvention Ljdk/vm/ci/code/CallingConvention;
0 13 4 args [Ljdk/vm/ci/meta/Value;
1 13 5 argLocations [Ljdk/vm/ci/meta/Value;
3 10 6 i I
5 8 7 arg Ljdk/vm/ci/meta/Value;
6 8 8 loc Ljdk/vm/ci/meta/AllocatableValue;
11 13 6 ptr Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
nativeCallingConvention
args
protected org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp emitSaveRegisters(jdk.vm.ci.code.Register[], jdk.vm.ci.meta.AllocatableValue[], boolean);
descriptor: ([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/AllocatableValue;Z)Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp
dup
aload 1
aload 2
iload 3
invokespecial org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp.<init>:([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/AllocatableValue;Z)V
astore 4
start local 4 1: aload 0
aload 4
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 3 1 savedRegisters [Ljdk/vm/ci/code/Register;
0 3 2 savedRegisterLocations [Ljdk/vm/ci/meta/AllocatableValue;
0 3 3 supportsRemove Z
1 3 4 save Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
MethodParameters:
Name Flags
savedRegisters
savedRegisterLocations
supportsRemove
protected org.graalvm.compiler.lir.VirtualStackSlot allocateSaveRegisterLocation(jdk.vm.ci.code.Register);
descriptor: (Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
aload 1
invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
invokevirtual jdk.vm.ci.code.Architecture.getLargestStorableKind:(Ljdk/vm/ci/code/Register$RegisterCategory;)Ljdk/vm/ci/meta/PlatformKind;
astore 2
start local 2 1: aload 2
invokeinterface jdk.vm.ci.meta.PlatformKind.getVectorLength:()I
iconst_1
if_icmple 3
2: getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
astore 2
3: StackMap locals: jdk.vm.ci.meta.PlatformKind
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
aload 2
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.lir.framemap.FrameMapBuilder.allocateSpillSlot:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 4 1 register Ljdk/vm/ci/code/Register;
1 4 2 kind Ljdk/vm/ci/meta/PlatformKind;
MethodParameters:
Name Flags
register
private org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp emitSaveAllRegisters(jdk.vm.ci.code.Register[], boolean);
descriptor: ([Ljdk/vm/ci/code/Register;Z)Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
arraylength
anewarray jdk.vm.ci.meta.AllocatableValue
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 5
3: StackMap locals: jdk.vm.ci.meta.AllocatableValue[] int
StackMap stack:
aload 3
iload 4
aload 0
aload 1
iload 4
aaload
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.allocateSaveRegisterLocation:(Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
aastore
4: iinc 4 1
StackMap locals:
StackMap stack:
5: iload 4
aload 1
arraylength
if_icmplt 3
end local 4 6: aload 0
aload 1
aload 3
iload 2
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitSaveRegisters:([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/AllocatableValue;Z)Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 7 1 savedRegisters [Ljdk/vm/ci/code/Register;
0 7 2 supportsRemove Z
1 7 3 savedRegisterLocations [Ljdk/vm/ci/meta/AllocatableValue;
2 6 4 i I
MethodParameters:
Name Flags
savedRegisters
supportsRemove
protected void emitRestoreRegisters(org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp);
descriptor: (Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new org.graalvm.compiler.lir.aarch64.AArch64RestoreRegistersOp
dup
aload 1
invokevirtual org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp.getSlots:()[Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual jdk.vm.ci.meta.AllocatableValue[].clone:()Ljava/lang/Object;
checkcast jdk.vm.ci.meta.AllocatableValue[]
aload 1
invokespecial org.graalvm.compiler.lir.aarch64.AArch64RestoreRegistersOp.<init>:([Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 save Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
MethodParameters:
Name Flags
save
public org.graalvm.compiler.lir.VirtualStackSlot getLockSlot(int);
descriptor: (I)Lorg/graalvm/compiler/lir/VirtualStackSlot;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getLockStack:()Lorg/graalvm/compiler/hotspot/HotSpotLockStack;
iload 1
invokevirtual org.graalvm.compiler.hotspot.HotSpotLockStack.makeLockSlot:(I)Lorg/graalvm/compiler/lir/VirtualStackSlot;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 lockDepth I
MethodParameters:
Name Flags
lockDepth
private org.graalvm.compiler.hotspot.HotSpotLockStack getLockStack();
descriptor: ()Lorg/graalvm/compiler/hotspot/HotSpotLockStack;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
ifnull 1
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
invokevirtual org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder.lockStack:()Lorg/graalvm/compiler/hotspot/HotSpotLockStack;
ifnonnull 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
invokevirtual org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder.lockStack:()Lorg/graalvm/compiler/hotspot/HotSpotLockStack;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
public void emitCompareBranch(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=12, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 2
astore 10
start local 10 1: aload 3
astore 11
start local 11 2: aload 10
instanceof jdk.vm.ci.hotspot.HotSpotObjectConstant
ifeq 4
3: aload 0
aload 10
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 10
4: StackMap locals: jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value
StackMap stack:
aload 11
instanceof jdk.vm.ci.hotspot.HotSpotObjectConstant
ifeq 6
5: aload 0
aload 11
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 11
6: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 10
aload 11
aload 4
iload 5
aload 6
aload 7
dload 8
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitCompareBranch:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
7: return
end local 11 end local 10 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 8 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 8 2 x Ljdk/vm/ci/meta/Value;
0 8 3 y Ljdk/vm/ci/meta/Value;
0 8 4 cond Lorg/graalvm/compiler/core/common/calc/Condition;
0 8 5 unorderedIsTrue Z
0 8 6 trueDestination Lorg/graalvm/compiler/lir/LabelRef;
0 8 7 falseDestination Lorg/graalvm/compiler/lir/LabelRef;
0 8 8 trueDestinationProbability D
1 8 10 localX Ljdk/vm/ci/meta/Value;
2 8 11 localY Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
cmpKind
x
y
cond
unorderedIsTrue
trueDestination
falseDestination
trueDestinationProbability
protected boolean emitCompare(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean);
descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 2
astore 6
start local 6 1: aload 3
astore 7
start local 7 2: aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 9
3: aload 2
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Constant;
astore 8
start local 8 4: getstatic jdk.vm.ci.hotspot.HotSpotCompressedNullConstant.COMPRESSED_NULL:Ljdk/vm/ci/meta/JavaConstant;
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 7
5: getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 6
6: goto 9
StackMap locals: jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Constant
StackMap stack:
7: aload 8
instanceof jdk.vm.ci.hotspot.HotSpotObjectConstant
ifeq 9
8: aload 0
aload 6
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 6
end local 8 9: StackMap locals:
StackMap stack:
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isConstantValue:(Ljdk/vm/ci/meta/Value;)Z
ifeq 16
10: aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Constant;
astore 8
start local 8 11: getstatic jdk.vm.ci.hotspot.HotSpotCompressedNullConstant.COMPRESSED_NULL:Ljdk/vm/ci/meta/JavaConstant;
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 14
12: getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 7
13: goto 16
StackMap locals: jdk.vm.ci.meta.Constant
StackMap stack:
14: aload 8
instanceof jdk.vm.ci.hotspot.HotSpotObjectConstant
ifeq 16
15: aload 0
aload 7
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 7
end local 8 16: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 6
aload 7
aload 4
iload 5
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 17 1 cmpKind Ljdk/vm/ci/meta/PlatformKind;
0 17 2 a Ljdk/vm/ci/meta/Value;
0 17 3 b Ljdk/vm/ci/meta/Value;
0 17 4 condition Lorg/graalvm/compiler/core/common/calc/Condition;
0 17 5 unorderedIsTrue Z
1 17 6 localA Ljdk/vm/ci/meta/Value;
2 17 7 localB Ljdk/vm/ci/meta/Value;
4 9 8 c Ljdk/vm/ci/meta/Constant;
11 16 8 c Ljdk/vm/ci/meta/Constant;
MethodParameters:
Name Flags
cmpKind
a
b
condition
unorderedIsTrue
public jdk.vm.ci.meta.Value emitCompress(jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.CompressEncoding, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.meta.Value.getValueKind:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ValueKind;
checkcast org.graalvm.compiler.core.common.LIRKind
astore 4
start local 4 1: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
astore 5
start local 5 2: getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 3
aload 4
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
if_acmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: org.graalvm.compiler.core.common.LIRKind org.graalvm.compiler.core.common.spi.LIRKindTool
StackMap stack:
aload 4
iconst_0
invokevirtual org.graalvm.compiler.core.common.LIRKind.isReference:(I)Z
ifeq 7
4: aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.compressedReference:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 5: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$CompressPointer
dup
aload 6
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getHeapBaseRegister:()Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.asValue:()Ljdk/vm/ci/code/RegisterValue;
aload 2
iload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$CompressPointer.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: aload 6
areturn
end local 6 7: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 8: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
astore 7
start local 7 9: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
astore 8
start local 8 10: aload 2
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.hasBase:()Z
ifne 11
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 8
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 18
11: StackMap locals: org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue org.graalvm.compiler.options.OptionValues
StackMap stack:
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 8
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 17
12: aload 0
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getWordKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 9
start local 9 13: new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$BaseMove
dup
aload 9
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$BaseMove.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
astore 10
start local 10 14: aload 0
aload 10
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
15: aload 9
astore 7
end local 10 end local 9 16: goto 18
17: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
aload 2
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.getBase:()J
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitLoadConstant:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
astore 7
18: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$CompressPointer
dup
aload 6
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 7
aload 2
iload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$CompressPointer.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
19: aload 6
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 20 1 pointer Ljdk/vm/ci/meta/Value;
0 20 2 encoding Lorg/graalvm/compiler/core/common/CompressEncoding;
0 20 3 nonNull Z
1 20 4 inputKind Lorg/graalvm/compiler/core/common/LIRKind;
2 20 5 lirKindTool Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
5 7 6 result Lorg/graalvm/compiler/lir/Variable;
8 20 6 result Lorg/graalvm/compiler/lir/Variable;
9 20 7 base Ljdk/vm/ci/meta/AllocatableValue;
10 20 8 options Lorg/graalvm/compiler/options/OptionValues;
13 16 9 baseAddress Lorg/graalvm/compiler/lir/Variable;
14 16 10 move Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotMove$BaseMove;
MethodParameters:
Name Flags
pointer
encoding
nonNull
public jdk.vm.ci.meta.Value emitUncompress(jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.CompressEncoding, boolean);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ldc Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.meta.Value.getValueKind:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ValueKind;
checkcast org.graalvm.compiler.core.common.LIRKind
astore 4
start local 4 1: getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 4
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
if_acmpeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: org.graalvm.compiler.core.common.LIRKind
StackMap stack:
aload 4
iconst_0
invokevirtual org.graalvm.compiler.core.common.LIRKind.isReference:(I)Z
ifeq 6
3: aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.reference:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 4: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$UncompressPointer
dup
aload 5
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getHeapBaseRegister:()Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.asValue:()Ljdk/vm/ci/code/RegisterValue;
aload 2
iload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$UncompressPointer.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: aload 5
areturn
end local 5 6: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 7: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
astore 6
start local 6 8: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
astore 7
start local 7 9: aload 2
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.hasBase:()Z
ifne 10
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 7
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 17
10: StackMap locals: org.graalvm.compiler.lir.Variable jdk.vm.ci.meta.AllocatableValue org.graalvm.compiler.options.OptionValues
StackMap stack:
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 7
invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 16
11: aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 8
start local 8 12: new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$BaseMove
dup
aload 8
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$BaseMove.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
astore 9
start local 9 13: aload 0
aload 9
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
14: aload 8
astore 6
end local 9 end local 8 15: goto 17
16: StackMap locals:
StackMap stack:
aload 0
getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
aload 2
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.getBase:()J
invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitLoadConstant:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
astore 6
17: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$UncompressPointer
dup
aload 5
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 6
aload 2
iload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$UncompressPointer.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
18: aload 5
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 19 1 pointer Ljdk/vm/ci/meta/Value;
0 19 2 encoding Lorg/graalvm/compiler/core/common/CompressEncoding;
0 19 3 nonNull Z
1 19 4 inputKind Lorg/graalvm/compiler/core/common/LIRKind;
4 6 5 result Lorg/graalvm/compiler/lir/Variable;
7 19 5 result Lorg/graalvm/compiler/lir/Variable;
8 19 6 base Ljdk/vm/ci/meta/AllocatableValue;
9 19 7 options Lorg/graalvm/compiler/options/OptionValues;
12 15 8 baseAddress Lorg/graalvm/compiler/lir/Variable;
13 15 9 move Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotMove$BaseMove;
MethodParameters:
Name Flags
pointer
encoding
nonNull
public void emitNullCheck(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
if_acmpne 5
1: aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getOopEncoding:()Lorg/graalvm/compiler/core/common/CompressEncoding;
astore 3
start local 3 2: aload 0
aload 1
aload 3
iconst_0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitUncompress:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)Ljdk/vm/ci/meta/Value;
astore 4
start local 4 3: aload 0
new org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp
dup
aload 0
aload 4
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
aload 2
invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
end local 4 end local 3 4: goto 6
5: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitNullCheck:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
6: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 7 1 address Ljdk/vm/ci/meta/Value;
0 7 2 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 4 3 encoding Lorg/graalvm/compiler/core/common/CompressEncoding;
3 4 4 uncompressed Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
state
public void emitPrefetchAllocate(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new org.graalvm.compiler.lir.aarch64.AArch64PrefetchOp
dup
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode.PSTL1KEEP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$PrefetchMode;
invokespecial org.graalvm.compiler.lir.aarch64.AArch64PrefetchOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$PrefetchMode;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 address Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
public void beforeRegisterAllocation();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.beforeRegisterAllocation:()V
1: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
invokevirtual org.graalvm.compiler.lir.LIR.hasDebugInfo:()Z
istore 1
start local 1 2: iload 1
ifeq 4
3: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
checkcast org.graalvm.compiler.lir.aarch64.AArch64FrameMapBuilder
invokevirtual org.graalvm.compiler.lir.aarch64.AArch64FrameMapBuilder.allocateDeoptimizationRescueSlot:()Ljdk/vm/ci/code/StackSlot;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.setDeoptimizationRescueSlot:(Ljdk/vm/ci/code/StackSlot;)V
4: StackMap locals: int
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
invokevirtual org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder.maxInterpreterFrameSize:()I
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.setMaxInterpreterFrameSize:(I)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
2 6 1 hasDebugInfo Z
public org.graalvm.compiler.lir.Variable emitForeignCall(org.graalvm.compiler.core.common.spi.ForeignCallLinkage, org.graalvm.compiler.lir.LIRFrameState, jdk.vm.ci.meta.Value[]);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Lorg/graalvm/compiler/lir/LIRFrameState;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=8, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
checkcast org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage
astore 4
start local 4 1: aload 4
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.destroysRegisters:()Z
istore 5
start local 5 2: aconst_null
astore 6
start local 6 3: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
astore 7
start local 7 4: iload 5
ifeq 8
5: aload 7
ifnull 8
aload 7
invokevirtual org.graalvm.compiler.hotspot.stubs.Stub.preservesRegisters:()Z
ifeq 8
6: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
invokeinterface jdk.vm.ci.code.RegisterConfig.getAllocatableRegisters:()Ljdk/vm/ci/code/RegisterArray;
invokevirtual jdk.vm.ci.code.RegisterArray.toArray:()[Ljdk/vm/ci/code/Register;
astore 8
start local 8 7: aload 0
aload 8
iconst_1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitSaveAllRegisters:([Ljdk/vm/ci/code/Register;Z)Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
astore 6
end local 8 8: StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator org.graalvm.compiler.core.common.spi.ForeignCallLinkage org.graalvm.compiler.lir.LIRFrameState jdk.vm.ci.meta.Value[] org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage int org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp org.graalvm.compiler.hotspot.stubs.Stub
StackMap stack:
aconst_null
astore 9
start local 9 9: aload 4
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.needsDebugInfo:()Z
ifeq 12
10: aload 2
astore 9
11: getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 12
aload 9
ifnonnull 12
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
ifnonnull 12
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
12: StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator org.graalvm.compiler.core.common.spi.ForeignCallLinkage org.graalvm.compiler.lir.LIRFrameState jdk.vm.ci.meta.Value[] org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage int org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp org.graalvm.compiler.hotspot.stubs.Stub top org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
iload 5
ifne 13
aload 4
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.needsJavaFrameAnchor:()Z
ifeq 22
13: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
astore 10
start local 10 14: aload 10
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getThreadRegister:()Ljdk/vm/ci/code/Register;
astore 11
start local 11 15: aload 0
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 12
start local 12 16: aload 0
new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.label:Lorg/graalvm/compiler/asm/Label;
17: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotCRuntimeCallPrologueOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaSpOffset:()I
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaPcOffset:()I
aload 11
aload 12
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.label:Lorg/graalvm/compiler/asm/Label;
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotCRuntimeCallPrologueOp.<init>:(IILjdk/vm/ci/code/Register;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/asm/Label;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
18: aload 0
aload 4
aload 9
aload 3
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Lorg/graalvm/compiler/lir/LIRFrameState;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 8
start local 8 19: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotCRuntimeCallEpilogueOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaSpOffset:()I
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaPcOffset:()I
aload 11
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.label:Lorg/graalvm/compiler/asm/Label;
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotCRuntimeCallEpilogueOp.<init>:(IILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/Label;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
20: aload 0
aconst_null
putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.label:Lorg/graalvm/compiler/asm/Label;
end local 12 end local 11 end local 10 21: goto 23
end local 8 22: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 9
aload 3
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Lorg/graalvm/compiler/lir/LIRFrameState;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
astore 8
start local 8 23: StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator org.graalvm.compiler.core.common.spi.ForeignCallLinkage org.graalvm.compiler.lir.LIRFrameState jdk.vm.ci.meta.Value[] org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage int org.graalvm.compiler.lir.aarch64.AArch64SaveRegistersOp org.graalvm.compiler.hotspot.stubs.Stub org.graalvm.compiler.lir.Variable org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
iload 5
ifeq 33
24: aload 7
ifnull 33
25: aload 7
invokevirtual org.graalvm.compiler.hotspot.stubs.Stub.preservesRegisters:()Z
ifeq 33
26: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
astore 10
start local 10 27: aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.currentRuntimeCallInfo:Lorg/graalvm/compiler/lir/LIRFrameState;
astore 11
start local 11 28: aload 11
ifnonnull 30
29: getstatic org.graalvm.compiler.lir.LIRFrameState.NO_STATE:Lorg/graalvm/compiler/lir/LIRFrameState;
astore 11
30: StackMap locals: org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 31
aload 10
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getCalleeSaveInfo:()Ljdk/internal/vm/compiler/collections/EconomicMap;
aload 11
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.containsKey:(Ljava/lang/Object;)Z
ifeq 31
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
31: StackMap locals:
StackMap stack:
aload 10
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getCalleeSaveInfo:()Ljdk/internal/vm/compiler/collections/EconomicMap;
aload 11
aload 6
invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
32: aload 0
aload 6
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitRestoreRegisters:(Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;)V
end local 11 end local 10 33: StackMap locals:
StackMap stack:
aload 8
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 34 1 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
0 34 2 state Lorg/graalvm/compiler/lir/LIRFrameState;
0 34 3 args [Ljdk/vm/ci/meta/Value;
1 34 4 hotspotLinkage Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
2 34 5 destroysRegisters Z
3 34 6 save Lorg/graalvm/compiler/lir/aarch64/AArch64SaveRegistersOp;
4 34 7 stub Lorg/graalvm/compiler/hotspot/stubs/Stub;
7 8 8 savedRegisters [Ljdk/vm/ci/code/Register;
19 22 8 result Lorg/graalvm/compiler/lir/Variable;
23 34 8 result Lorg/graalvm/compiler/lir/Variable;
9 34 9 debugInfo Lorg/graalvm/compiler/lir/LIRFrameState;
14 21 10 registers Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
15 21 11 thread Ljdk/vm/ci/code/Register;
16 21 12 scratch Lorg/graalvm/compiler/lir/Variable;
27 33 10 generationResult Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
28 33 11 key Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
linkage
state
args
public void emitDeoptimizeCaller(jdk.vm.ci.meta.DeoptimizationAction, jdk.vm.ci.meta.DeoptimizationReason);
descriptor: (Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
aload 1
aload 2
iconst_0
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.encodeDeoptActionAndReason:(Ljdk/vm/ci/meta/DeoptimizationAction;Ljdk/vm/ci/meta/DeoptimizationReason;I)Ljdk/vm/ci/meta/JavaConstant;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitJavaConstant:(Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/Value;
astore 3
start local 3 1: aload 0
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
getstatic jdk.vm.ci.meta.SpeculationLog.NO_SPECULATION:Ljdk/vm/ci/meta/SpeculationLog$Speculation;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.encodeSpeculation:(Ljdk/vm/ci/meta/SpeculationLog$Speculation;)Ljdk/vm/ci/meta/JavaConstant;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitJavaConstant:(Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/Value;
astore 4
start local 4 2: aload 0
aload 3
aload 4
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.moveDeoptValuesToThread:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
3: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotDeoptimizeCallerOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotDeoptimizeCallerOp.<init>:(Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
4: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 5 1 action Ljdk/vm/ci/meta/DeoptimizationAction;
0 5 2 reason Ljdk/vm/ci/meta/DeoptimizationReason;
1 5 3 actionAndReason Ljdk/vm/ci/meta/Value;
2 5 4 speculation Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
action
reason
public void emitDeoptimize(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.moveDeoptValuesToThread:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
1: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotDeoptimizeOp
dup
aload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotDeoptimizeOp.<init>:(Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 3 1 actionAndReason Ljdk/vm/ci/meta/Value;
0 3 2 failedSpeculation Ljdk/vm/ci/meta/Value;
0 3 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
actionAndReason
failedSpeculation
state
private void moveDeoptValuesToThread(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.pendingDeoptimizationOffset:I
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.moveValueToThread:(Ljdk/vm/ci/meta/Value;I)V
1: aload 0
aload 2
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.pendingFailedSpeculationOffset:I
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.moveValueToThread:(Ljdk/vm/ci/meta/Value;I)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 3 1 actionAndReason Ljdk/vm/ci/meta/Value;
0 3 2 speculation Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
actionAndReason
speculation
private void moveValueToThread(jdk.vm.ci.meta.Value, int);
descriptor: (Ljdk/vm/ci/meta/Value;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 3
start local 3 1: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getThreadRegister:()Ljdk/vm/ci/code/Register;
aload 3
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 4
start local 4 2: aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
istore 5
start local 5 3: new org.graalvm.compiler.lir.aarch64.AArch64AddressValue
dup
aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
aload 4
getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
iload 2
iload 5
getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_SCALED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
invokespecial org.graalvm.compiler.lir.aarch64.AArch64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;)V
astore 6
start local 6 4: aload 0
new org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp
dup
aload 1
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.aarch64.AArch64Kind
aload 6
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aconst_null
invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 6 1 value Ljdk/vm/ci/meta/Value;
0 6 2 offset I
1 6 3 wordKind Lorg/graalvm/compiler/core/common/LIRKind;
2 6 4 thread Ljdk/vm/ci/code/RegisterValue;
3 6 5 transferSize I
4 6 6 address Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
MethodParameters:
Name Flags
value
offset
public void emitUnwind(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getForeignCalls:()Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.UNWIND_EXCEPTION_TO_CALLER:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
astore 2
start local 2 1: aload 2
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallLinkage.getOutgoingCallingConvention:()Ljdk/vm/ci/code/CallingConvention;
astore 3
start local 3 2: getstatic org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 3
aload 3
invokevirtual jdk.vm.ci.code.CallingConvention.getArgumentCount:()I
iconst_2
if_icmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: org.graalvm.compiler.core.common.spi.ForeignCallLinkage jdk.vm.ci.code.CallingConvention
StackMap stack:
aload 3
iconst_0
invokevirtual jdk.vm.ci.code.CallingConvention.getArgument:(I)Ljdk/vm/ci/meta/AllocatableValue;
checkcast jdk.vm.ci.code.RegisterValue
astore 4
start local 4 4: aload 0
aload 4
aload 1
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
5: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotUnwindOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 4
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotUnwindOp.<init>:(Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/code/RegisterValue;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 7 1 exception Ljdk/vm/ci/meta/Value;
1 7 2 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
2 7 3 outgoingCc Ljdk/vm/ci/code/CallingConvention;
4 7 4 exceptionParameter Ljdk/vm/ci/code/RegisterValue;
MethodParameters:
Name Flags
exception
public jdk.vm.ci.meta.Value emitLoadObjectAddress(jdk.vm.ci.meta.Constant);
descriptor: (Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 1
checkcast jdk.vm.ci.hotspot.HotSpotObjectConstant
astore 2
start local 2 1: aload 2
invokeinterface jdk.vm.ci.hotspot.HotSpotObjectConstant.isCompressed:()Z
ifeq 2
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getNarrowOopKind:()Lorg/graalvm/compiler/core/common/LIRKind;
goto 3
StackMap locals: jdk.vm.ci.hotspot.HotSpotObjectConstant
StackMap stack:
2: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getObjectKind:()Lorg/graalvm/compiler/core/common/LIRKind;
StackMap locals:
StackMap stack: org.graalvm.compiler.core.common.LIRKind
3: astore 3
start local 3 4: aload 0
aload 3
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 4
start local 4 5: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLoadAddressOp
dup
aload 4
aload 1
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.RESOLVE:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLoadAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;Ljava/lang/Object;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 7 1 constant Ljdk/vm/ci/meta/Constant;
1 7 2 objectConstant Ljdk/vm/ci/hotspot/HotSpotObjectConstant;
4 7 3 kind Lorg/graalvm/compiler/core/common/LIRKind;
5 7 4 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
constant
public jdk.vm.ci.meta.Value emitLoadMetaspaceAddress(jdk.vm.ci.meta.Constant, org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction);
descriptor: (Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
checkcast jdk.vm.ci.hotspot.HotSpotMetaspaceConstant
astore 3
start local 3 1: aload 3
invokeinterface jdk.vm.ci.hotspot.HotSpotMetaspaceConstant.isCompressed:()Z
ifeq 2
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getNarrowPointerKind:()Lorg/graalvm/compiler/core/common/LIRKind;
goto 3
StackMap locals: jdk.vm.ci.hotspot.HotSpotMetaspaceConstant
StackMap stack:
2: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getWordKind:()Lorg/graalvm/compiler/core/common/LIRKind;
StackMap locals:
StackMap stack: org.graalvm.compiler.core.common.LIRKind
3: astore 4
start local 4 4: aload 0
aload 4
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 5: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLoadAddressOp
dup
aload 5
aload 1
aload 2
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLoadAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;Ljava/lang/Object;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
6: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 7 1 constant Ljdk/vm/ci/meta/Constant;
0 7 2 action Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
1 7 3 metaspaceConstant Ljdk/vm/ci/hotspot/HotSpotMetaspaceConstant;
4 7 4 kind Lorg/graalvm/compiler/core/common/LIRKind;
5 7 5 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
constant
action
private jdk.vm.ci.meta.Value emitConstantRetrieval(org.graalvm.compiler.core.common.spi.ForeignCallDescriptor, java.lang.Object[], jdk.vm.ci.meta.Constant[], jdk.vm.ci.meta.AllocatableValue[], org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;[Ljava/lang/Object;[Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getForeignCalls:()Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
aload 1
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
astore 6
start local 6 1: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotConstantRetrievalOp
dup
aload 3
aload 4
aload 5
aload 6
aload 2
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotConstantRetrievalOp.<init>:([Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;[Ljava/lang/Object;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 6
invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallLinkage.getOutgoingCallingConvention:()Ljdk/vm/ci/code/CallingConvention;
invokevirtual jdk.vm.ci.code.CallingConvention.getReturn:()Ljdk/vm/ci/meta/AllocatableValue;
astore 7
start local 7 3: aload 0
aload 7
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 4 1 foreignCall Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
0 4 2 notes [Ljava/lang/Object;
0 4 3 constants [Ljdk/vm/ci/meta/Constant;
0 4 4 constantDescriptions [Ljdk/vm/ci/meta/AllocatableValue;
0 4 5 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
1 4 6 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
3 4 7 result Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
foreignCall
notes
constants
constantDescriptions
frameState
private jdk.vm.ci.meta.Value emitConstantRetrieval(org.graalvm.compiler.core.common.spi.ForeignCallDescriptor, org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction, jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.AllocatableValue[], org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iconst_1
anewarray jdk.vm.ci.meta.Constant
dup
iconst_0
aload 3
aastore
astore 6
start local 6 1: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
astore 7
start local 7 2: aload 0
aload 1
aload 7
aload 6
aload 4
aload 5
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;[Ljava/lang/Object;[Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 3 1 foreignCall Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
0 3 2 action Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
0 3 3 constant Ljdk/vm/ci/meta/Constant;
0 3 4 constantDescriptions [Ljdk/vm/ci/meta/AllocatableValue;
0 3 5 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
1 3 6 constants [Ljdk/vm/ci/meta/Constant;
2 3 7 notes [Ljava/lang/Object;
MethodParameters:
Name Flags
foreignCall
action
constant
constantDescriptions
frameState
public jdk.vm.ci.meta.Value emitResolveDynamicInvoke(jdk.vm.ci.meta.Constant, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Constant;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
anewarray jdk.vm.ci.meta.AllocatableValue
astore 3
start local 3 1: aload 0
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.RESOLVE_DYNAMIC_INVOKE:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.INITIALIZE:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
aload 1
aload 3
aload 2
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 appendix Ljdk/vm/ci/meta/Constant;
0 2 2 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
1 2 3 constantDescriptions [Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
appendix
frameState
public jdk.vm.ci.meta.Value emitLoadConfigValue(int, org.graalvm.compiler.core.common.LIRKind);
descriptor: (ILorg/graalvm/compiler/core/common/LIRKind;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 1: aload 0
new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLoadConfigValueOp
dup
iload 1
aload 3
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLoadConfigValueOp.<init>:(ILjdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 3 1 markId I
0 3 2 kind Lorg/graalvm/compiler/core/common/LIRKind;
1 3 3 result Lorg/graalvm/compiler/lir/Variable;
MethodParameters:
Name Flags
markId
kind
private jdk.vm.ci.meta.Value emitConstantRetrieval(org.graalvm.compiler.core.common.spi.ForeignCallDescriptor, org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction, jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iconst_1
anewarray jdk.vm.ci.meta.AllocatableValue
dup
iconst_0
aload 0
aload 4
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aastore
astore 6
start local 6 1: aload 0
aload 1
aload 2
aload 3
aload 6
aload 5
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 foreignCall Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
0 2 2 action Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
0 2 3 constant Ljdk/vm/ci/meta/Constant;
0 2 4 constantDescription Ljdk/vm/ci/meta/Value;
0 2 5 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
1 2 6 constantDescriptions [Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
foreignCall
action
constant
constantDescription
frameState
public jdk.vm.ci.meta.Value emitObjectConstantRetrieval(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.RESOLVE_STRING_BY_SYMBOL:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.RESOLVE:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 constant Ljdk/vm/ci/meta/Constant;
0 1 2 constantDescription Ljdk/vm/ci/meta/Value;
0 1 3 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
constant
constantDescription
frameState
public jdk.vm.ci.meta.Value emitMetaspaceConstantRetrieval(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.RESOLVE_KLASS_BY_SYMBOL:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.RESOLVE:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 constant Ljdk/vm/ci/meta/Constant;
0 1 2 constantDescription Ljdk/vm/ci/meta/Value;
0 1 3 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
constant
constantDescription
frameState
public void emitReturn(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
astore 3
start local 3 1: aload 2
ifnull 4
2: aload 0
aload 1
aload 2
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.resultOperandFor:(Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/AllocatableValue;
astore 3
3: aload 0
aload 3
aload 2
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
4: StackMap locals: jdk.vm.ci.meta.AllocatableValue
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getThreadRegister:()Ljdk/vm/ci/code/Register;
astore 4
start local 4 5: aload 0
6: new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotReturnOp
dup
aload 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
ifnull 7
iconst_1
goto 8
StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.code.Register
StackMap stack: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator new 6 new 6 jdk.vm.ci.meta.AllocatableValue
7: iconst_0
StackMap locals: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator jdk.vm.ci.meta.JavaKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.code.Register
StackMap stack: org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator new 6 new 6 jdk.vm.ci.meta.AllocatableValue int
8: aload 0
getfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 4
aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.requiresReservedStackAccessCheck:()Z
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotReturnOp.<init>:(Ljdk/vm/ci/meta/Value;ZLorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/code/Register;Z)V
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
9: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 10 1 kind Ljdk/vm/ci/meta/JavaKind;
0 10 2 input Ljdk/vm/ci/meta/Value;
1 10 3 operand Ljdk/vm/ci/meta/AllocatableValue;
5 10 4 thread Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
kind
input
public jdk.vm.ci.meta.Value emitKlassInitializationAndRetrieval(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.INITIALIZE_KLASS_BY_SYMBOL:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.INITIALIZE:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 constant Ljdk/vm/ci/meta/Constant;
0 1 2 constantDescription Ljdk/vm/ci/meta/Value;
0 1 3 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
constant
constantDescription
frameState
public jdk.vm.ci.meta.Value emitResolveMethodAndLoadCounters(jdk.vm.ci.meta.Constant, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
descriptor: (Ljdk/vm/ci/meta/Constant;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iconst_2
anewarray jdk.vm.ci.meta.AllocatableValue
dup
iconst_0
aload 0
aload 2
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aastore
dup
iconst_1
aload 0
aload 3
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aastore
astore 5
start local 5 1: aload 0
getstatic org.graalvm.compiler.hotspot.HotSpotBackend.RESOLVE_METHOD_BY_SYMBOL_AND_LOAD_COUNTERS:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.LOAD_COUNTERS:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
aload 1
aload 5
aload 4
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.emitConstantRetrieval:(Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;Ljdk/vm/ci/meta/Constant;[Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 method Ljdk/vm/ci/meta/Constant;
0 2 2 klassHint Ljdk/vm/ci/meta/Value;
0 2 3 methodDescription Ljdk/vm/ci/meta/Value;
0 2 4 frameState Lorg/graalvm/compiler/lir/LIRFrameState;
1 2 5 constantDescriptions [Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
method
klassHint
methodDescription
frameState
public org.graalvm.compiler.hotspot.stubs.Stub getStub();
descriptor: ()Lorg/graalvm/compiler/hotspot/stubs/Stub;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
public org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult getResult();
descriptor: ()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.getResult:()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
checkcast org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
protected org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$StrategySwitchOp createStrategySwitchOp(org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.Variable, jdk.vm.ci.meta.AllocatableValue, java.util.function.Function<org.graalvm.compiler.core.common.calc.Condition, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag>);
descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;Ljava/util/function/Function;)Lorg/graalvm/compiler/lir/aarch64/AArch64ControlFlow$StrategySwitchOp;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: new org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotStrategySwitchOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
aload 6
invokespecial org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotStrategySwitchOp.<init>:(Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljava/util/function/Function;)V
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 strategy Lorg/graalvm/compiler/lir/SwitchStrategy;
0 1 2 keyTargets [Lorg/graalvm/compiler/lir/LabelRef;
0 1 3 defaultTarget Lorg/graalvm/compiler/lir/LabelRef;
0 1 4 key Lorg/graalvm/compiler/lir/Variable;
0 1 5 scratchValue Ljdk/vm/ci/meta/AllocatableValue;
0 1 6 converter Ljava/util/function/Function<Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;>;
Signature: (Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;Ljava/util/function/Function<Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;>;)Lorg/graalvm/compiler/lir/aarch64/AArch64ControlFlow$StrategySwitchOp;
MethodParameters:
Name Flags
strategy
keyTargets
defaultTarget
key
scratchValue
converter
public void setDebugInfoBuilder(org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder);
descriptor: (Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 2 1 debugInfoBuilder Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
MethodParameters:
Name Flags
debugInfoBuilder
public org.graalvm.compiler.lir.StandardOp$SaveRegistersOp createZapRegisters(jdk.vm.ci.code.Register[], jdk.vm.ci.meta.JavaConstant[]);
descriptor: ([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 zappedRegisters [Ljdk/vm/ci/code/Register;
0 1 2 zapValues [Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
zappedRegisters
zapValues
public org.graalvm.compiler.lir.LIRInstruction createZapArgumentSpace(jdk.vm.ci.code.StackSlot[], jdk.vm.ci.meta.JavaConstant[]);
descriptor: ([Ljdk/vm/ci/code/StackSlot;[Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/aarch64/AArch64HotSpotLIRGenerator;
0 1 1 zappedStack [Ljdk/vm/ci/code/StackSlot;
0 1 2 zapValues [Ljdk/vm/ci/meta/JavaConstant;
MethodParameters:
Name Flags
zappedStack
zapValues
public org.graalvm.compiler.core.common.spi.CodeGenProviders getProviders();
descriptor: ()Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.graalvm.compiler.lir.gen.LIRGenerationResult getResult();
descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "AArch64HotSpotLIRGenerator.java"
InnerClasses:
public RegisterCategory = jdk.vm.ci.code.Register$RegisterCategory of jdk.vm.ci.code.Register
public Speculation = jdk.vm.ci.meta.SpeculationLog$Speculation of jdk.vm.ci.meta.SpeculationLog
public final AddressingMode = org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode of org.graalvm.compiler.asm.aarch64.AArch64Address
public final ConditionFlag = org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag of org.graalvm.compiler.asm.aarch64.AArch64Assembler
public final PrefetchMode = org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode of org.graalvm.compiler.asm.aarch64.AArch64Assembler
public final BaseMove = org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$BaseMove of org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove
public CompressPointer = org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$CompressPointer of org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove
public UncompressPointer = org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove$UncompressPointer of org.graalvm.compiler.hotspot.aarch64.AArch64HotSpotMove
public abstract SaveRegistersOp = org.graalvm.compiler.lir.StandardOp$SaveRegistersOp of org.graalvm.compiler.lir.StandardOp
public DirectFarForeignCallOp = org.graalvm.compiler.lir.aarch64.AArch64Call$DirectFarForeignCallOp of org.graalvm.compiler.lir.aarch64.AArch64Call
public DirectNearForeignCallOp = org.graalvm.compiler.lir.aarch64.AArch64Call$DirectNearForeignCallOp of org.graalvm.compiler.lir.aarch64.AArch64Call
public StrategySwitchOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$StrategySwitchOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
public final NullCheckOp = org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public StoreOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool