class org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1 extends org.graalvm.compiler.truffle.compiler.hotspot.TruffleCallBoundaryInstrumentation
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1
super_class: org.graalvm.compiler.truffle.compiler.hotspot.TruffleCallBoundaryInstrumentation
{
final org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1 this$1;
descriptor: Lorg/graalvm/compiler/truffle/compiler/hotspot/amd64/AMD64TruffleCallBoundaryInstrumentationFactory$1;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final org.graalvm.compiler.options.OptionValues val$options;
descriptor: Lorg/graalvm/compiler/options/OptionValues;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1, org.graalvm.compiler.core.common.spi.CodeGenProviders, org.graalvm.compiler.lir.framemap.FrameMap, org.graalvm.compiler.asm.Assembler, org.graalvm.compiler.lir.asm.DataBuilder, org.graalvm.compiler.lir.asm.FrameContext, org.graalvm.compiler.options.OptionValues, org.graalvm.compiler.debug.DebugContext, org.graalvm.compiler.code.CompilationResult, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig, org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider, org.graalvm.compiler.options.OptionValues);
descriptor: (Lorg/graalvm/compiler/truffle/compiler/hotspot/amd64/AMD64TruffleCallBoundaryInstrumentationFactory$1;Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;Lorg/graalvm/compiler/lir/framemap/FrameMap;Lorg/graalvm/compiler/asm/Assembler;Lorg/graalvm/compiler/lir/asm/DataBuilder;Lorg/graalvm/compiler/lir/asm/FrameContext;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/code/CompilationResult;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/options/OptionValues;)V
flags: (0x0000)
Code:
stack=11, locals=13, args_size=13
start local 0 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 start local 11 0: aload 0
aload 1
putfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.this$1:Lorg/graalvm/compiler/truffle/compiler/hotspot/amd64/AMD64TruffleCallBoundaryInstrumentationFactory$1;
aload 0
aload 12
putfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.val$options:Lorg/graalvm/compiler/options/OptionValues;
aload 0
aload 2
aload 3
aload 4
aload 5
aload 6
aload 7
aload 8
aload 9
aload 10
aload 11
invokespecial org.graalvm.compiler.truffle.compiler.hotspot.TruffleCallBoundaryInstrumentation.<init>:(Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;Lorg/graalvm/compiler/lir/framemap/FrameMap;Lorg/graalvm/compiler/asm/Assembler;Lorg/graalvm/compiler/lir/asm/DataBuilder;Lorg/graalvm/compiler/lir/asm/FrameContext;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/code/CompilationResult;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;)V
return
end local 11 end local 10 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 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/compiler/hotspot/amd64/AMD64TruffleCallBoundaryInstrumentationFactory$1$1;
0 1 2 $anonymous0 Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;
0 1 3 $anonymous1 Lorg/graalvm/compiler/lir/framemap/FrameMap;
0 1 4 $anonymous2 Lorg/graalvm/compiler/asm/Assembler;
0 1 5 $anonymous3 Lorg/graalvm/compiler/lir/asm/DataBuilder;
0 1 6 $anonymous4 Lorg/graalvm/compiler/lir/asm/FrameContext;
0 1 7 $anonymous5 Lorg/graalvm/compiler/options/OptionValues;
0 1 8 $anonymous6 Lorg/graalvm/compiler/debug/DebugContext;
0 1 9 $anonymous7 Lorg/graalvm/compiler/code/CompilationResult;
0 1 10 $anonymous8 Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
0 1 11 $anonymous9 Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
MethodParameters:
Name Flags
this$0 final
$anonymous0
$anonymous1
$anonymous2
$anonymous3
$anonymous4
$anonymous5
$anonymous6
$anonymous7
$anonymous8
$anonymous9
val$options final
protected void injectTailCallCode(int, int);
descriptor: (II)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.asm:Lorg/graalvm/compiler/asm/Assembler;
checkcast org.graalvm.compiler.asm.amd64.AMD64MacroAssembler
astore 3
start local 3 1: aload 0
getfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.codeCache:Ljdk/vm/ci/code/CodeCacheProvider;
invokeinterface jdk.vm.ci.code.CodeCacheProvider.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
getstatic jdk.vm.ci.hotspot.HotSpotCallingConventionType.JavaCall:Ljdk/vm/ci/hotspot/HotSpotCallingConventionType;
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
invokeinterface jdk.vm.ci.code.RegisterConfig.getCallingConventionRegisters:(Ljdk/vm/ci/code/CallingConvention$Type;Ljdk/vm/ci/meta/JavaKind;)Ljdk/vm/ci/code/RegisterArray;
iconst_0
invokevirtual jdk.vm.ci.code.RegisterArray.get:(I)Ljdk/vm/ci/code/Register;
astore 4
start local 4 2: getstatic jdk.vm.ci.amd64.AMD64.r10:Ljdk/vm/ci/code/Register;
astore 5
start local 5 3: new org.graalvm.compiler.asm.Label
dup
invokespecial org.graalvm.compiler.asm.Label.<init>:()V
astore 6
start local 6 4: aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.position:()I
istore 7
start local 7 5: aload 0
getfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedOops:Z
ifeq 14
6: aload 3
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
iload 1
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;Z)V
7: getstatic org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory.$assertionsDisabled:Z
ifne 8
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.position:()I
iload 7
isub
iconst_5
if_icmpge 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals: org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1 int int org.graalvm.compiler.asm.amd64.AMD64MacroAssembler jdk.vm.ci.code.Register jdk.vm.ci.code.Register org.graalvm.compiler.asm.Label int
StackMap stack:
aload 0
getfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getOopEncoding:()Lorg/graalvm/compiler/core/common/CompressEncoding;
astore 8
start local 8 9: aload 0
getfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.val$options:Lorg/graalvm/compiler/options/OptionValues;
aload 8
invokestatic org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp.hasBase:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/core/common/CompressEncoding;)Z
ifeq 10
aload 0
getfield org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
invokeinterface org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider.getHeapBaseRegister:()Ljdk/vm/ci/code/Register;
goto 11
StackMap locals: org.graalvm.compiler.core.common.CompressEncoding
StackMap stack:
10: getstatic jdk.vm.ci.code.Register.None:Ljdk/vm/ci/code/Register;
StackMap locals:
StackMap stack: jdk.vm.ci.code.Register
11: astore 9
start local 9 12: aload 3
aload 5
aload 8
invokevirtual org.graalvm.compiler.core.common.CompressEncoding.getShift:()I
aload 9
iconst_1
invokestatic org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp.emitUncompressCode:(Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;Ljdk/vm/ci/code/Register;ILjdk/vm/ci/code/Register;Z)V
end local 9 end local 8 13: goto 16
14: StackMap locals:
StackMap stack:
aload 3
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 4
iload 1
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;Z)V
15: getstatic org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory.$assertionsDisabled:Z
ifne 16
aload 3
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.position:()I
iload 7
isub
iconst_5
if_icmpge 16
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
16: StackMap locals:
StackMap stack:
aload 3
aload 5
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 5
iload 2
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movq:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
17: aload 3
aload 5
aload 5
getstatic org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag.Equal:Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;
aload 6
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.testqAndJcc:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/Label;Z)I
pop
18: aload 3
aload 5
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.jmp:(Ljdk/vm/ci/code/Register;)V
19: aload 3
aload 6
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.bind:(Lorg/graalvm/compiler/asm/Label;)V
20: 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 21 0 this Lorg/graalvm/compiler/truffle/compiler/hotspot/amd64/AMD64TruffleCallBoundaryInstrumentationFactory$1$1;
0 21 1 installedCodeOffset I
0 21 2 entryPointOffset I
1 21 3 masm Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
2 21 4 thisRegister Ljdk/vm/ci/code/Register;
3 21 5 spillRegister Ljdk/vm/ci/code/Register;
4 21 6 doProlog Lorg/graalvm/compiler/asm/Label;
5 21 7 pos I
9 13 8 encoding Lorg/graalvm/compiler/core/common/CompressEncoding;
12 13 9 heapBaseRegister Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
installedCodeOffset
entryPointOffset
}
SourceFile: "AMD64TruffleCallBoundaryInstrumentationFactory.java"
EnclosingMethod: org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1.createBuilder:(Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;Lorg/graalvm/compiler/lir/framemap/FrameMap;Lorg/graalvm/compiler/asm/Assembler;Lorg/graalvm/compiler/lir/asm/DataBuilder;Lorg/graalvm/compiler/lir/asm/FrameContext;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/code/CompilationResult;Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
NestHost: org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory
InnerClasses:
public abstract Type = jdk.vm.ci.code.CallingConvention$Type of jdk.vm.ci.code.CallingConvention
public final ConditionFlag = org.graalvm.compiler.asm.amd64.AMD64Assembler$ConditionFlag of org.graalvm.compiler.asm.amd64.AMD64Assembler
public UncompressPointerOp = org.graalvm.compiler.lir.amd64.AMD64Move$UncompressPointerOp of org.graalvm.compiler.lir.amd64.AMD64Move
org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1
org.graalvm.compiler.truffle.compiler.hotspot.amd64.AMD64TruffleCallBoundaryInstrumentationFactory$1$1