public class org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator extends org.graalvm.compiler.core.amd64.AMD64LIRGenerator 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.amd64.AMD64HotSpotLIRGenerator
super_class: org.graalvm.compiler.core.amd64.AMD64LIRGenerator
{
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.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp saveRbp;
descriptor: Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$SaveRbp;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp rescueSlotOp;
descriptor: Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
flags: (0x0002) ACC_PRIVATE
java.util.List<org.graalvm.compiler.hotspot.amd64.AMD64HotSpotRestoreRbpOp> epilogueOps;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotRestoreRbpOp;>;
private jdk.vm.ci.code.Register pollOnReturnScratchRegister;
descriptor: Ljdk/vm/ci/code/Register;
flags: (0x0002) ACC_PRIVATE
private org.graalvm.compiler.lir.LIRFrameState currentRuntimeCallInfo;
descriptor: Lorg/graalvm/compiler/lir/LIRFrameState;
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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.$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
aload 1
aload 2
aload 3
new org.graalvm.compiler.core.amd64.AMD64MoveFactoryBase$BackupSlotProvider
dup
aload 3
invokevirtual org.graalvm.compiler.lir.gen.LIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
invokespecial org.graalvm.compiler.core.amd64.AMD64MoveFactoryBase$BackupSlotProvider.<init>:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;)V
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/core/amd64/AMD64MoveFactoryBase$BackupSlotProvider;)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/amd64/AMD64HotSpotLIRGenerator;
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
private void <init>(org.graalvm.compiler.hotspot.meta.HotSpotProviders, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig, org.graalvm.compiler.lir.gen.LIRGenerationResult, org.graalvm.compiler.core.amd64.AMD64MoveFactoryBase$BackupSlotProvider);
descriptor: (Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;Lorg/graalvm/compiler/core/amd64/AMD64MoveFactoryBase$BackupSlotProvider;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRKindTool
dup
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRKindTool.<init>:()V
new org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator
dup
aconst_null
invokespecial org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator.<init>:(Ljdk/vm/ci/meta/AllocatableValue;)V
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMoveFactory
dup
aload 4
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMoveFactory.<init>:(Lorg/graalvm/compiler/core/amd64/AMD64MoveFactoryBase$BackupSlotProvider;)V
aload 1
aload 2
aload 3
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.<init>:(Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;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 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/amd64/AMD64HotSpotLIRGenerator;
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;
0 2 4 backupSlotProvider Lorg/graalvm/compiler/core/amd64/AMD64MoveFactoryBase$BackupSlotProvider;
MethodParameters:
Name Flags
providers
config
lirGenRes
backupSlotProvider
protected void <init>(org.graalvm.compiler.core.common.spi.LIRKindTool, org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator, 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/amd64/AMD64ArithmeticLIRGenerator;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.amd64.AMD64LIRGenerator.<init>:(Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
1: aload 0
new java.util.ArrayList
dup
iconst_2
invokespecial java.util.ArrayList.<init>:(I)V
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.epilogueOps:Ljava/util/List;
2: getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 3
aload 5
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.basicLockSize:I
bipush 8
if_icmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator org.graalvm.compiler.core.common.spi.LIRKindTool org.graalvm.compiler.core.amd64.AMD64ArithmeticLIRGenerator org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory org.graalvm.compiler.hotspot.meta.HotSpotProviders org.graalvm.compiler.hotspot.GraalHotSpotVMConfig org.graalvm.compiler.lir.gen.LIRGenerationResult
StackMap stack:
aload 0
aload 5
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
4: 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 5 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 5 1 lirKindTool Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
0 5 2 arithmeticLIRGen Lorg/graalvm/compiler/core/amd64/AMD64ArithmeticLIRGenerator;
0 5 3 moveFactory Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
0 5 4 providers Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
0 5 5 config Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
0 5 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.amd64.AMD64LIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
protected int getMaxVectorSize();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.maxVectorSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
protected void emitSaveRbp();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=2, args_size=1
start local 0 0: new org.graalvm.compiler.lir.StandardOp$NoOp
dup
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getCurrentBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getCurrentBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.size:()I
invokespecial org.graalvm.compiler.lir.StandardOp$NoOp.<init>:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;I)V
astore 1
start local 1 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp
dup
aload 0
aload 1
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp.<init>:(Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;Lorg/graalvm/compiler/lir/StandardOp$NoOp;)V
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.saveRbp:Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$SaveRbp;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
1 4 1 placeholder Lorg/graalvm/compiler/lir/StandardOp$NoOp;
private jdk.vm.ci.meta.AllocatableValue getOrInitRescueSlot();
descriptor: ()Ljdk/vm/ci/meta/AllocatableValue;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getOrInitRescueSlotOp:()Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
astore 1
start local 1 1: aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp.getSlot:()Ljdk/vm/ci/meta/AllocatableValue;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
1 2 1 op Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
private org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp getOrInitRescueSlotOp();
descriptor: ()Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.rescueSlotOp:Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
ifnonnull 2
1: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp
dup
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getWordKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp.<init>:(Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;Lorg/graalvm/compiler/core/common/LIRKind;)V
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.rescueSlotOp:Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.rescueSlotOp:Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
public <I extends org.graalvm.compiler.lir.LIRInstruction> I append();
descriptor: (Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.graalvm.compiler.core.amd64.AMD64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
astore 2
start local 2 1: aload 1
instanceof org.graalvm.compiler.hotspot.amd64.AMD64HotSpotRestoreRbpOp
ifeq 3
2: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.epilogueOps:Ljava/util/List;
aload 1
checkcast org.graalvm.compiler.hotspot.amd64.AMD64HotSpotRestoreRbpOp
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: StackMap locals: org.graalvm.compiler.lir.LIRInstruction
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 4 1 op TI;
1 4 2 ret TI;
Signature: <I:Lorg/graalvm/compiler/lir/LIRInstruction;>(TI;)TI;
MethodParameters:
Name Flags
op
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 2
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
ifnull 1
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
private jdk.vm.ci.code.Register findPollOnReturnScratchRegister();
descriptor: ()Ljdk/vm/ci/code/Register;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getCodeCache:()Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
invokevirtual jdk.vm.ci.hotspot.HotSpotCodeCacheProvider.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
astore 1
start local 1 1: aload 1
invokeinterface jdk.vm.ci.code.RegisterConfig.getAllocatableRegisters:()Ljdk/vm/ci/code/RegisterArray;
invokevirtual jdk.vm.ci.code.RegisterArray.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator jdk.vm.ci.code.RegisterConfig top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.vm.ci.code.Register
astore 2
start local 2 3: aload 2
aload 1
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
invokeinterface jdk.vm.ci.code.RegisterConfig.getReturnRegister:(Ljdk/vm/ci/meta/JavaKind;)Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifne 5
aload 2
getstatic jdk.vm.ci.amd64.AMD64.rbp:Ljdk/vm/ci/code/Register;
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifne 5
4: aload 2
areturn
end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
1 7 1 regConfig Ljdk/vm/ci/code/RegisterConfig;
3 5 2 r Ljdk/vm/ci/code/Register;
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=9, 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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
4: StackMap locals: jdk.vm.ci.meta.AllocatableValue
StackMap stack:
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.pollOnReturnScratchRegister:Ljdk/vm/ci/code/Register;
ifnonnull 6
5: aload 0
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.findPollOnReturnScratchRegister:()Ljdk/vm/ci/code/Register;
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.pollOnReturnScratchRegister:Ljdk/vm/ci/code/Register;
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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 7: aload 0
8: new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotReturnOp
dup
aload 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
ifnull 9
iconst_1
goto 10
StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator 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.amd64.AMD64HotSpotLIRGenerator new 8 new 8 jdk.vm.ci.meta.AllocatableValue
9: iconst_0
StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator 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.amd64.AMD64HotSpotLIRGenerator new 8 new 8 jdk.vm.ci.meta.AllocatableValue int
10: aload 4
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.pollOnReturnScratchRegister:Ljdk/vm/ci/code/Register;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.requiresReservedStackAccessCheck:()Z
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotReturnOp.<init>:(Ljdk/vm/ci/meta/Value;ZLjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Z)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 12 1 kind Ljdk/vm/ci/meta/JavaKind;
0 12 2 input Ljdk/vm/ci/meta/Value;
1 12 3 operand Ljdk/vm/ci/meta/AllocatableValue;
7 12 4 thread Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
kind
input
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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=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: aload 0
aload 5
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.currentRuntimeCallInfo:Lorg/graalvm/compiler/lir/LIRFrameState;
1: aload 1
checkcast org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage
astore 6
start local 6 2: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
checkcast jdk.vm.ci.amd64.AMD64
astore 7
start local 7 3: aload 7
invokevirtual jdk.vm.ci.amd64.AMD64.getFeatures:()Ljava/util/EnumSet;
getstatic jdk.vm.ci.amd64.AMD64$CPUFeature.AVX:Ljdk/vm/ci/amd64/AMD64$CPUFeature;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 5
aload 6
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.mayContainFP:()Z
ifeq 5
aload 6
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.isCompiledStub:()Z
ifne 5
4: aload 0
new org.graalvm.compiler.lir.amd64.AMD64VZeroUpper
dup
aload 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
invokespecial org.graalvm.compiler.lir.amd64.AMD64VZeroUpper.<init>:([Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/code/RegisterConfig;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
5: StackMap locals: org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage jdk.vm.ci.amd64.AMD64
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitForeignCallOp:(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
6: return
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 7 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 7 1 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
0 7 2 result Ljdk/vm/ci/meta/Value;
0 7 3 arguments [Ljdk/vm/ci/meta/Value;
0 7 4 temps [Ljdk/vm/ci/meta/Value;
0 7 5 info Lorg/graalvm/compiler/lir/LIRFrameState;
2 7 6 hsLinkage Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
3 7 7 arch Ljdk/vm/ci/amd64/AMD64;
MethodParameters:
Name Flags
linkage
result
arguments
temps
info
protected org.graalvm.compiler.lir.amd64.AMD64SaveRegistersOp emitSaveRegisters(jdk.vm.ci.code.Register[], jdk.vm.ci.meta.AllocatableValue[]);
descriptor: ([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new org.graalvm.compiler.lir.amd64.AMD64SaveRegistersOp
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64SaveRegistersOp.<init>:([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/AllocatableValue;)V
astore 3
start local 3 1: aload 0
aload 3
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
0 3 1 savedRegisters [Ljdk/vm/ci/code/Register;
0 3 2 savedRegisterLocations [Ljdk/vm/ci/meta/AllocatableValue;
1 3 3 save Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
MethodParameters:
Name Flags
savedRegisters
savedRegisterLocations
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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64Kind.DOUBLE:Ljdk/vm/ci/amd64/AMD64Kind;
astore 2
3: StackMap locals: jdk.vm.ci.meta.PlatformKind
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64SaveRegistersOp emitSaveAllRegisters();
descriptor: ()Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getSaveableRegisters:()[Ljdk/vm/ci/code/Register;
astore 1
start local 1 1: aload 1
arraylength
anewarray jdk.vm.ci.meta.AllocatableValue
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 6
4: StackMap locals: jdk.vm.ci.code.Register[] jdk.vm.ci.meta.AllocatableValue[] int
StackMap stack:
aload 2
iload 3
aload 0
aload 1
iload 3
aaload
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.allocateSaveRegisterLocation:(Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/lir/VirtualStackSlot;
aastore
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 1
arraylength
if_icmplt 4
end local 3 7: aload 0
aload 1
aload 2
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitSaveRegisters:([Ljdk/vm/ci/code/Register;[Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
1 8 1 savedRegisters [Ljdk/vm/ci/code/Register;
2 8 2 savedRegisterLocations [Ljdk/vm/ci/meta/AllocatableValue;
3 7 3 i I
protected jdk.vm.ci.code.Register[] getSaveableRegisters();
descriptor: ()[Ljdk/vm/ci/code/Register;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getRegisterAllocationConfig:()Lorg/graalvm/compiler/core/common/alloc/RegisterAllocationConfig;
invokevirtual org.graalvm.compiler.core.common.alloc.RegisterAllocationConfig.getAllocatableRegisters:()Ljdk/vm/ci/code/RegisterArray;
invokevirtual jdk.vm.ci.code.RegisterArray.toArray:()[Ljdk/vm/ci/code/Register;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
protected void emitRestoreRegisters(org.graalvm.compiler.lir.amd64.AMD64SaveRegistersOp);
descriptor: (Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;)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.amd64.AMD64RestoreRegistersOp
dup
aload 1
invokevirtual org.graalvm.compiler.lir.amd64.AMD64SaveRegistersOp.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.amd64.AMD64RestoreRegistersOp.<init>:([Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
0 2 1 save Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
MethodParameters:
Name Flags
save
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64LIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
0 2 1 debugInfoBuilder Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
MethodParameters:
Name Flags
debugInfoBuilder
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=7, locals=12, 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.amd64.AMD64HotSpotLIRGenerator.getStub:()Lorg/graalvm/compiler/hotspot/stubs/Stub;
astore 7
start local 7 4: iload 5
ifeq 6
aload 7
ifnull 6
aload 7
invokevirtual org.graalvm.compiler.hotspot.stubs.Stub.shouldSaveRegistersAroundCalls:()Z
ifeq 6
5: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitSaveAllRegisters:()Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
astore 6
6: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator 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.amd64.AMD64SaveRegistersOp org.graalvm.compiler.hotspot.stubs.Stub
StackMap stack:
aconst_null
astore 9
start local 9 7: aload 4
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.needsDebugInfo:()Z
ifeq 10
8: aload 2
astore 9
9: getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 10
aload 9
ifnonnull 10
aload 7
ifnonnull 10
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
10: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator 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.amd64.AMD64SaveRegistersOp org.graalvm.compiler.hotspot.stubs.Stub top org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
aload 4
invokeinterface org.graalvm.compiler.hotspot.HotSpotForeignCallLinkage.needsJavaFrameAnchor:()Z
ifeq 16
11: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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 10
start local 10 12: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCRuntimeCallPrologueOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaSpOffset:()I
aload 10
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCRuntimeCallPrologueOp.<init>:(ILjdk/vm/ci/code/Register;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
13: aload 0
aload 4
aload 9
aload 3
invokespecial org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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 14: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCRuntimeCallEpilogueOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaSpOffset:()I
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaFpOffset:()I
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.threadLastJavaPcOffset:()I
aload 10
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCRuntimeCallEpilogueOp.<init>:(IIILjdk/vm/ci/code/Register;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
end local 10 15: goto 17
end local 8 16: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 9
aload 3
invokespecial org.graalvm.compiler.core.amd64.AMD64LIRGenerator.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 17: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator 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.amd64.AMD64SaveRegistersOp org.graalvm.compiler.hotspot.stubs.Stub org.graalvm.compiler.lir.Variable org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
aload 6
ifnull 25
18: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
astore 10
start local 10 19: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.currentRuntimeCallInfo:Lorg/graalvm/compiler/lir/LIRFrameState;
astore 11
start local 11 20: aload 11
ifnonnull 22
21: getstatic org.graalvm.compiler.lir.LIRFrameState.NO_STATE:Lorg/graalvm/compiler/lir/LIRFrameState;
astore 11
22: StackMap locals: org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult org.graalvm.compiler.lir.LIRFrameState
StackMap stack:
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 23
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 23
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
23: 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
24: aload 0
aload 6
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitRestoreRegisters:(Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;)V
end local 11 end local 10 25: 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 26 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 26 1 linkage Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
0 26 2 state Lorg/graalvm/compiler/lir/LIRFrameState;
0 26 3 args [Ljdk/vm/ci/meta/Value;
1 26 4 hotspotLinkage Lorg/graalvm/compiler/hotspot/HotSpotForeignCallLinkage;
2 26 5 destroysRegisters Z
3 26 6 save Lorg/graalvm/compiler/lir/amd64/AMD64SaveRegistersOp;
4 26 7 stub Lorg/graalvm/compiler/hotspot/stubs/Stub;
14 16 8 result Lorg/graalvm/compiler/lir/Variable;
17 26 8 result Lorg/graalvm/compiler/lir/Variable;
7 26 9 debugInfo Lorg/graalvm/compiler/lir/LIRFrameState;
12 15 10 thread Ljdk/vm/ci/code/Register;
19 25 10 generationResult Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
20 25 11 key Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
linkage
state
args
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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 4
start local 4 5: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoadAddressOp
dup
aload 4
aload 1
getstatic org.graalvm.compiler.hotspot.meta.HotSpotConstantLoadAction.RESOLVE:Lorg/graalvm/compiler/hotspot/meta/HotSpotConstantLoadAction;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoadAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;Ljava/lang/Object;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 5
start local 5 5: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoadAddressOp
dup
aload 5
aload 1
aload 2
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoadAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;Ljava/lang/Object;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotConstantRetrievalOp
dup
aload 3
aload 4
aload 5
aload 6
aload 2
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotConstantRetrievalOp.<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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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
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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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 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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aastore
dup
iconst_1
aload 0
aload 3
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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 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.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 3
start local 3 1: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoadConfigValueOp
dup
iload 1
aload 3
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLoadConfigValueOp.<init>:(ILjdk/vm/ci/meta/AllocatableValue;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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
public jdk.vm.ci.meta.Value emitRandomSeed();
descriptor: ()Ljdk/vm/ci/meta/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new org.graalvm.compiler.lir.amd64.AMD64ReadTimestampCounter
dup
invokespecial org.graalvm.compiler.lir.amd64.AMD64ReadTimestampCounter.<init>:()V
astore 1
start local 1 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
2: aload 0
aload 1
invokevirtual org.graalvm.compiler.lir.amd64.AMD64ReadTimestampCounter.getLowResult:()Ljdk/vm/ci/meta/AllocatableValue;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
1 3 1 timestamp Lorg/graalvm/compiler/lir/amd64/AMD64ReadTimestampCounter;
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=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64TailcallOp
dup
aload 1
aload 2
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64TailcallOp.<init>:([Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 2 1 args [Ljdk/vm/ci/meta/Value;
0 2 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[], int);
descriptor: (JLjdk/vm/ci/code/CallingConvention;[Ljdk/vm/ci/meta/Value;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=12, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 4
arraylength
anewarray jdk.vm.ci.meta.Value
astore 6
start local 6 1: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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: iload 5
invokestatic jdk.vm.ci.meta.JavaConstant.forInt:(I)Ljdk/vm/ci/meta/PrimitiveConstant;
astore 7
start local 7 3: getstatic jdk.vm.ci.amd64.AMD64.rax:Ljdk/vm/ci/code/Register;
getstatic jdk.vm.ci.amd64.AMD64Kind.DWORD:Ljdk/vm/ci/amd64/AMD64Kind;
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 8
start local 8 4: aload 0
aload 8
aload 7
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitMoveConstant:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Constant;)V
5: iconst_0
istore 9
start local 9 6: goto 12
7: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator long jdk.vm.ci.code.CallingConvention jdk.vm.ci.meta.Value[] int jdk.vm.ci.meta.Value[] jdk.vm.ci.meta.PrimitiveConstant jdk.vm.ci.meta.AllocatableValue int
StackMap stack:
aload 4
iload 9
aaload
astore 10
start local 10 8: aload 3
iload 9
invokevirtual jdk.vm.ci.code.CallingConvention.getArgument:(I)Ljdk/vm/ci/meta/AllocatableValue;
astore 11
start local 11 9: aload 0
aload 11
aload 10
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
10: aload 6
iload 9
aload 11
aastore
end local 11 end local 10 11: iinc 9 1
StackMap locals:
StackMap stack:
12: iload 9
aload 4
arraylength
if_icmplt 7
end local 9 13: aload 0
getstatic jdk.vm.ci.amd64.AMD64Kind.QWORD:Ljdk/vm/ci/amd64/AMD64Kind;
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.amd64.AMD64HotSpotLIRGenerator.emitLoadConstant:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
astore 9
start local 9 14: aload 0
new org.graalvm.compiler.lir.amd64.AMD64CCall
dup
aload 3
invokevirtual jdk.vm.ci.code.CallingConvention.getReturn:()Ljdk/vm/ci/meta/AllocatableValue;
aload 9
aload 8
aload 6
invokespecial org.graalvm.compiler.lir.amd64.AMD64CCall.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;[Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
15: return
end local 9 end local 8 end local 7 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 16 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 16 1 address J
0 16 3 nativeCallingConvention Ljdk/vm/ci/code/CallingConvention;
0 16 4 args [Ljdk/vm/ci/meta/Value;
0 16 5 numberOfFloatingPointArguments I
1 16 6 argLocations [Ljdk/vm/ci/meta/Value;
3 16 7 intConst Ljdk/vm/ci/meta/PrimitiveConstant;
4 16 8 numberOfFloatingPointArgumentsRegister Ljdk/vm/ci/meta/AllocatableValue;
6 13 9 i I
8 11 10 arg Ljdk/vm/ci/meta/Value;
9 11 11 loc Ljdk/vm/ci/meta/AllocatableValue;
14 16 9 ptr Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
nativeCallingConvention
args
numberOfFloatingPointArguments
public void emitUnwind(jdk.vm.ci.meta.Value);
descriptor: (Ljdk/vm/ci/meta/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.$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.amd64.AMD64HotSpotLIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
5: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotUnwindOp
dup
aload 4
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotUnwindOp.<init>:(Ljdk/vm/ci/code/RegisterValue;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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
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.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.pendingDeoptimizationOffset:I
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.moveValueToThread:(Ljdk/vm/ci/meta/Value;I)V
1: aload 0
aload 2
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.pendingFailedSpeculationOffset:I
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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: new org.graalvm.compiler.lir.amd64.AMD64AddressValue
dup
aload 3
aload 4
iload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;I)V
astore 5
start local 5 3: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
aload 1
invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
aload 5
aload 1
aconst_null
invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitStore:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
4: 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 5 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 5 1 v Ljdk/vm/ci/meta/Value;
0 5 2 offset I
1 5 3 wordKind Lorg/graalvm/compiler/core/common/LIRKind;
2 5 4 thread Ljdk/vm/ci/code/RegisterValue;
3 5 5 address Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
MethodParameters:
Name Flags
v
offset
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.amd64.AMD64HotSpotLIRGenerator.moveDeoptValuesToThread:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
1: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64DeoptimizeOp
dup
aload 3
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64DeoptimizeOp.<init>:(Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
0 3 1 actionAndReason Ljdk/vm/ci/meta/Value;
0 3 2 speculation Ljdk/vm/ci/meta/Value;
0 3 3 state Lorg/graalvm/compiler/lir/LIRFrameState;
MethodParameters:
Name Flags
actionAndReason
speculation
state
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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.moveDeoptValuesToThread:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
3: aload 0
new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotDeoptimizeCallerOp
dup
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotDeoptimizeCallerOp.<init>:()V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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 emitDeoptimizeWithExceptionInCaller(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.hotspot.amd64.AMD64HotSpotDeoptimizeWithExceptionCallerOp
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 1
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotDeoptimizeWithExceptionCallerOp.<init>:(Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/meta/Value;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
0 2 1 exception Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
exception
public void beforeRegisterAllocation();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.core.amd64.AMD64LIRGenerator.beforeRegisterAllocation:()V
1: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.preserveFramePointer:Z
ifeq 5
3: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.saveRbp:Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$SaveRbp;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp.remove:()V
4: goto 10
5: StackMap locals: int
StackMap stack:
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.saveRbp:Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$SaveRbp;
iload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp.finalize:(Z)Ljdk/vm/ci/meta/AllocatableValue;
astore 2
start local 2 6: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.epilogueOps:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 9
StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator int jdk.vm.ci.meta.AllocatableValue top java.util.Iterator
StackMap stack:
7: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.hotspot.amd64.AMD64HotSpotRestoreRbpOp
astore 3
start local 3 8: aload 3
aload 2
invokeinterface org.graalvm.compiler.hotspot.amd64.AMD64HotSpotRestoreRbpOp.setSavedRbp:(Ljdk/vm/ci/meta/AllocatableValue;)V
end local 3 9: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
end local 2 10: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator int
StackMap stack:
iload 1
ifeq 12
11: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getFrameMapBuilder:()Lorg/graalvm/compiler/lir/framemap/FrameMapBuilder;
checkcast org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder
invokevirtual org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder.allocateDeoptimizationRescueSlot:()Ljdk/vm/ci/code/StackSlot;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.setDeoptimizationRescueSlot:(Ljdk/vm/ci/code/StackSlot;)V
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.debugInfoBuilder:Lorg/graalvm/compiler/hotspot/HotSpotDebugInfoBuilder;
invokevirtual org.graalvm.compiler.hotspot.HotSpotDebugInfoBuilder.maxInterpreterFrameSize:()I
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.setMaxInterpreterFrameSize:(I)V
13: getstatic org.graalvm.compiler.hotspot.debug.BenchmarkCounters.enabled:Z
ifeq 19
14: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getOrInitRescueSlotOp:()Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator$RescueSlotDummyOp;
astore 2
start local 2 15: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
invokevirtual org.graalvm.compiler.hotspot.HotSpotLIRGenerationResult.getLIR:()Lorg/graalvm/compiler/lir/LIR;
astore 3
start local 3 16: aload 3
aload 3
invokevirtual org.graalvm.compiler.lir.LIR.getControlFlowGraph:()Lorg/graalvm/compiler/core/common/cfg/AbstractControlFlowGraph;
invokeinterface org.graalvm.compiler.core.common.cfg.AbstractControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
invokevirtual org.graalvm.compiler.lir.LIR.getLIRforBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/util/ArrayList;
astore 4
start local 4 17: aload 4
iconst_1
aload 2
invokevirtual java.util.ArrayList.add:(ILjava/lang/Object;)V
18: aload 3
invokevirtual org.graalvm.compiler.lir.LIR.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
iconst_2
aload 3
ldc "created rescue dummy op"
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
end local 4 end local 3 end local 2 19: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
2 20 1 hasDebugInfo Z
6 10 2 savedRbp Ljdk/vm/ci/meta/AllocatableValue;
8 9 3 op Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotRestoreRbpOp;
15 19 2 op Lorg/graalvm/compiler/lir/LIRInstruction;
16 19 3 lir Lorg/graalvm/compiler/lir/LIR;
17 19 4 instructions Ljava/util/ArrayList<Lorg/graalvm/compiler/lir/LIRInstruction;>;
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=9, 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.amd64.AMD64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
astore 5
start local 5 2: getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 3
aload 4
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getObjectKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
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
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getNarrowOopKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 5: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$CompressPointerOp
dup
aload 6
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$CompressPointerOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;ZLorg/graalvm/compiler/core/common/spi/LIRKindTool;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getNarrowPointerKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.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.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 9
start local 9 13: new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMove$BaseMove
dup
aload 9
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMove$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.amd64.AMD64HotSpotLIRGenerator.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
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getWordKind:()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.amd64.AMD64HotSpotLIRGenerator.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.lir.amd64.AMD64Move$CompressPointerOp
dup
aload 6
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 7
aload 2
iload 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$CompressPointerOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;ZLorg/graalvm/compiler/core/common/spi/LIRKindTool;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
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/amd64/AMD64HotSpotMove$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=9, locals=12, 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.amd64.AMD64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
astore 5
start local 5 2: getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.$assertionsDisabled:Z
ifne 3
aload 4
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getNarrowOopKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
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
aload 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getObjectKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 6
start local 6 5: aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp
dup
aload 6
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;ZLorg/graalvm/compiler/core/common/spi/LIRKindTool;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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 5
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getWordKind:()Lorg/graalvm/compiler/core/common/LIRKind;
astore 6
start local 6 8: aload 0
aload 6
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 7
start local 7 9: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
astore 8
start local 8 10: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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 9
start local 9 11: aload 2
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.hasBase:()Z
ifne 12
getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionKey;
aload 9
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 19
12: StackMap locals: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.CompressEncoding int org.graalvm.compiler.core.common.LIRKind org.graalvm.compiler.core.common.spi.LIRKindTool org.graalvm.compiler.core.common.LIRKind 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 9
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
13: aload 0
aload 6
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
astore 10
start local 10 14: new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMove$BaseMove
dup
aload 10
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMove$BaseMove.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
astore 11
start local 11 15: aload 0
aload 11
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
16: aload 10
astore 8
end local 11 end local 10 17: goto 19
18: StackMap locals:
StackMap stack:
aload 0
aload 6
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.amd64.AMD64HotSpotLIRGenerator.emitLoadConstant:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/AllocatableValue;
astore 8
19: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp
dup
aload 7
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
aload 8
aload 2
iload 3
aload 5
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/core/common/CompressEncoding;ZLorg/graalvm/compiler/core/common/spi/LIRKindTool;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
20: aload 7
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 21 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 21 1 pointer Ljdk/vm/ci/meta/Value;
0 21 2 encoding Lorg/graalvm/compiler/core/common/CompressEncoding;
0 21 3 nonNull Z
1 21 4 inputKind Lorg/graalvm/compiler/core/common/LIRKind;
2 21 5 lirKindTool Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
5 7 6 result Lorg/graalvm/compiler/lir/Variable;
8 21 6 uncompressedKind Lorg/graalvm/compiler/core/common/LIRKind;
9 21 7 result Lorg/graalvm/compiler/lir/Variable;
10 21 8 base Ljdk/vm/ci/meta/AllocatableValue;
11 21 9 options Lorg/graalvm/compiler/options/OptionValues;
14 17 10 baseAddress Lorg/graalvm/compiler/lir/Variable;
15 17 11 move Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotMove$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=7, locals=6, 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;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getLIRKindTool:()Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
invokeinterface org.graalvm.compiler.core.common.spi.LIRKindTool.getNarrowOopKind:()Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
if_acmpne 11
1: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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 3
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.getShift:()I
iconst_3
if_icmpgt 8
3: aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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.unknownReference:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
astore 5
start local 5 4: new org.graalvm.compiler.lir.amd64.AMD64AddressValue
dup
aload 5
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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;
aload 5
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
iconst_1
aload 3
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.getShift:()I
ishl
invokestatic org.graalvm.compiler.asm.amd64.AMD64Address$Scale.fromInt:(I)Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;
5: iconst_0
6: invokespecial org.graalvm.compiler.lir.amd64.AMD64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/asm/amd64/AMD64Address$Scale;I)V
astore 4
end local 5 start local 4 7: goto 9
end local 4 8: StackMap locals: org.graalvm.compiler.core.common.CompressEncoding
StackMap stack:
aload 0
aload 1
aload 3
iconst_0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.emitUncompress:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/CompressEncoding;Z)Ljdk/vm/ci/meta/Value;
astore 4
start local 4 9: StackMap locals: jdk.vm.ci.meta.Value
StackMap stack:
aload 0
new org.graalvm.compiler.lir.amd64.AMD64Move$NullCheckOp
dup
aload 0
aload 4
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
aload 2
invokespecial org.graalvm.compiler.lir.amd64.AMD64Move$NullCheckOp.<init>:(Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
pop
10: return
end local 4 end local 3 11: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokespecial org.graalvm.compiler.core.amd64.AMD64LIRGenerator.emitNullCheck:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
0 13 1 address Ljdk/vm/ci/meta/Value;
0 13 2 state Lorg/graalvm/compiler/lir/LIRFrameState;
2 11 3 encoding Lorg/graalvm/compiler/core/common/CompressEncoding;
7 8 4 uncompressed Ljdk/vm/ci/meta/Value;
9 11 4 uncompressed Ljdk/vm/ci/meta/Value;
4 7 5 wordKind Lorg/graalvm/compiler/core/common/LIRKind;
MethodParameters:
Name Flags
address
state
public org.graalvm.compiler.lir.LIRInstruction createBenchmarkCounter(java.lang.String, java.lang.String, jdk.vm.ci.meta.Value);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.hotspot.debug.BenchmarkCounters.enabled:Z
ifeq 2
1: new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCounterOp
dup
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getOrInitRescueSlot:()Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCounterOp.<init>:(Ljava/lang/String;Ljava/lang/String;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/meta/AllocatableValue;)V
areturn
2: StackMap locals:
StackMap stack:
ldc "BenchmarkCounters are not enabled!"
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
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/amd64/AMD64HotSpotLIRGenerator;
0 3 1 name Ljava/lang/String;
0 3 2 group Ljava/lang/String;
0 3 3 increment Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
name
group
increment
public org.graalvm.compiler.lir.LIRInstruction createMultiBenchmarkCounter(java.lang.String[], java.lang.String[], jdk.vm.ci.meta.Value[]);
descriptor: ([Ljava/lang/String;[Ljava/lang/String;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/LIRInstruction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic org.graalvm.compiler.hotspot.debug.BenchmarkCounters.enabled:Z
ifeq 2
1: new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCounterOp
dup
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getRegisters:()Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
aload 0
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.getOrInitRescueSlot:()Ljdk/vm/ci/meta/AllocatableValue;
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotCounterOp.<init>:([Ljava/lang/String;[Ljava/lang/String;[Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Ljdk/vm/ci/meta/AllocatableValue;)V
areturn
2: StackMap locals:
StackMap stack:
ldc "BenchmarkCounters are not enabled!"
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
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/amd64/AMD64HotSpotLIRGenerator;
0 3 1 names [Ljava/lang/String;
0 3 2 groups [Ljava/lang/String;
0 3 3 increments [Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
names
groups
increments
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.amd64.AMD64PrefetchOp
dup
aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.allocatePrefetchInstr:I
invokespecial org.graalvm.compiler.lir.amd64.AMD64PrefetchOp.<init>:(Lorg/graalvm/compiler/lir/amd64/AMD64AddressValue;I)V
invokevirtual org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator.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/amd64/AMD64HotSpotLIRGenerator;
0 2 1 address Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
address
protected org.graalvm.compiler.lir.amd64.AMD64ControlFlow$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);
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;)Lorg/graalvm/compiler/lir/amd64/AMD64ControlFlow$StrategySwitchOp;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new org.graalvm.compiler.hotspot.amd64.AMD64HotSpotStrategySwitchOp
dup
aload 1
aload 2
aload 3
aload 4
aload 5
invokespecial org.graalvm.compiler.hotspot.amd64.AMD64HotSpotStrategySwitchOp.<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;)V
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 1 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLIRGenerator;
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 temp Ljdk/vm/ci/meta/AllocatableValue;
MethodParameters:
Name Flags
strategy
keyTargets
defaultTarget
key
temp
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.amd64.AMD64HotSpotLIRGenerator.getResult:()Lorg/graalvm/compiler/hotspot/HotSpotLIRGenerationResult;
areturn
LocalVariableTable:
Start End Slot Name Signature
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.amd64.AMD64HotSpotLIRGenerator.getProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "AMD64HotSpotLIRGenerator.java"
NestMembers:
org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp
InnerClasses:
public final CPUFeature = jdk.vm.ci.amd64.AMD64$CPUFeature of jdk.vm.ci.amd64.AMD64
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 Scale = org.graalvm.compiler.asm.amd64.AMD64Address$Scale of org.graalvm.compiler.asm.amd64.AMD64Address
public final BackupSlotProvider = org.graalvm.compiler.core.amd64.AMD64MoveFactoryBase$BackupSlotProvider of org.graalvm.compiler.core.amd64.AMD64MoveFactoryBase
private final RescueSlotDummyOp = org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$RescueSlotDummyOp of org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator
SaveRbp = org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator$SaveRbp of org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLIRGenerator
public final BaseMove = org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMove$BaseMove of org.graalvm.compiler.hotspot.amd64.AMD64HotSpotMove
public final NoOp = org.graalvm.compiler.lir.StandardOp$NoOp of org.graalvm.compiler.lir.StandardOp
public abstract SaveRegistersOp = org.graalvm.compiler.lir.StandardOp$SaveRegistersOp of org.graalvm.compiler.lir.StandardOp
public StrategySwitchOp = org.graalvm.compiler.lir.amd64.AMD64ControlFlow$StrategySwitchOp of org.graalvm.compiler.lir.amd64.AMD64ControlFlow
public CompressPointerOp = org.graalvm.compiler.lir.amd64.AMD64Move$CompressPointerOp of org.graalvm.compiler.lir.amd64.AMD64Move
public final NullCheckOp = org.graalvm.compiler.lir.amd64.AMD64Move$NullCheckOp of org.graalvm.compiler.lir.amd64.AMD64Move
public UncompressPointerOp = org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp of org.graalvm.compiler.lir.amd64.AMD64Move
public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool