final class org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp extends org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp
super_class: org.graalvm.compiler.lir.amd64.AMD64LIRInstruction
{
public static final org.graalvm.compiler.lir.LIRInstructionClass<org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp> TYPE;
descriptor: Lorg/graalvm/compiler/lir/LIRInstructionClass;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/compiler/lir/LIRInstructionClass<Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp;>;
private final jdk.vm.ci.code.Register threadRegister;
descriptor: Ljdk/vm/ci/code/Register;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int threadLastJavaSpOffset;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int threadLastJavaPcOffset;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int threadLastJavaFpOffset;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.graalvm.compiler.lir.StandardOp$SaveRegistersOp saveRegisterOp;
descriptor: Lorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp;
invokestatic org.graalvm.compiler.lir.LIRInstructionClass.create:(Ljava/lang/Class;)Lorg/graalvm/compiler/lir/LIRInstructionClass;
putstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.TYPE:Lorg/graalvm/compiler/lir/LIRInstructionClass;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.vm.ci.code.Register, int, int, int, org.graalvm.compiler.lir.StandardOp$SaveRegistersOp);
descriptor: (Ljdk/vm/ci/code/Register;IIILorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;)V
flags: (0x0000)
Code:
stack=2, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getstatic org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.TYPE:Lorg/graalvm/compiler/lir/LIRInstructionClass;
invokespecial org.graalvm.compiler.lir.amd64.AMD64LIRInstruction.<init>:(Lorg/graalvm/compiler/lir/LIRInstructionClass;)V
1: aload 0
aload 1
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadRegister:Ljdk/vm/ci/code/Register;
2: aload 0
iload 2
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaSpOffset:I
3: aload 0
iload 3
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaPcOffset:I
4: aload 0
iload 4
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaFpOffset:I
5: aload 0
aload 5
putfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.saveRegisterOp:Lorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;
6: 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 7 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp;
0 7 1 threadRegister Ljdk/vm/ci/code/Register;
0 7 2 threadLastJavaSpOffset I
0 7 3 threadLastJavaPcOffset I
0 7 4 threadLastJavaFpOffset I
0 7 5 saveRegisterOp Lorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;
MethodParameters:
Name Flags
threadRegister
threadLastJavaSpOffset
threadLastJavaPcOffset
threadLastJavaFpOffset
saveRegisterOp
public void emitCode(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.amd64.AMD64MacroAssembler);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.frameMap:Lorg/graalvm/compiler/lir/framemap/FrameMap;
astore 3
start local 3 1: aload 3
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.getRegisterConfig:()Ljdk/vm/ci/code/RegisterConfig;
astore 4
start local 4 2: aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.saveRegisterOp:Lorg/graalvm/compiler/lir/StandardOp$SaveRegistersOp;
aload 3
invokeinterface org.graalvm.compiler.lir.StandardOp$SaveRegistersOp.getMap:(Lorg/graalvm/compiler/lir/framemap/FrameMap;)Ljdk/vm/ci/code/RegisterSaveLayout;
astore 5
start local 5 3: aload 4
invokeinterface jdk.vm.ci.code.RegisterConfig.getFrameRegister:()Ljdk/vm/ci/code/Register;
astore 6
start local 6 4: aload 2
aload 6
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadRegister:Ljdk/vm/ci/code/Register;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaSpOffset:I
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
5: aload 2
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadRegister:Ljdk/vm/ci/code/Register;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaSpOffset:I
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movslq:(Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
6: aload 2
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadRegister:Ljdk/vm/ci/code/Register;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaPcOffset:I
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movslq:(Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
7: aload 2
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadRegister:Ljdk/vm/ci/code/Register;
aload 0
getfield org.graalvm.compiler.hotspot.amd64.AMD64HotSpotLeaveUnpackFramesStackFrameOp.threadLastJavaFpOffset:I
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movslq:(Lorg/graalvm/compiler/asm/amd64/AMD64Address;I)V
8: aload 3
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.getTarget:()Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.wordSize:I
istore 7
start local 7 9: aload 4
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;
astore 8
start local 8 10: aload 2
aload 8
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 6
aload 5
aload 8
invokevirtual jdk.vm.ci.code.RegisterSaveLayout.registerToSlot:(Ljdk/vm/ci/code/Register;)I
iload 7
imul
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movptr:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
11: aload 4
getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
invokeinterface jdk.vm.ci.code.RegisterConfig.getReturnRegister:(Ljdk/vm/ci/meta/JavaKind;)Ljdk/vm/ci/code/Register;
astore 9
start local 9 12: aload 2
aload 9
new org.graalvm.compiler.asm.amd64.AMD64Address
dup
aload 6
aload 5
aload 9
invokevirtual jdk.vm.ci.code.RegisterSaveLayout.registerToSlot:(Ljdk/vm/ci/code/Register;)I
iload 7
imul
invokespecial org.graalvm.compiler.asm.amd64.AMD64Address.<init>:(Ljdk/vm/ci/code/Register;I)V
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
13: return
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 14 0 this Lorg/graalvm/compiler/hotspot/amd64/AMD64HotSpotLeaveUnpackFramesStackFrameOp;
0 14 1 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 14 2 masm Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
1 14 3 frameMap Lorg/graalvm/compiler/lir/framemap/FrameMap;
2 14 4 registerConfig Ljdk/vm/ci/code/RegisterConfig;
3 14 5 registerSaveLayout Ljdk/vm/ci/code/RegisterSaveLayout;
4 14 6 stackPointerRegister Ljdk/vm/ci/code/Register;
9 14 7 stackSlotSize I
10 14 8 integerResultRegister Ljdk/vm/ci/code/Register;
12 14 9 floatResultRegister Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
crb
masm
}
SourceFile: "AMD64HotSpotLeaveUnpackFramesStackFrameOp.java"
InnerClasses:
public abstract SaveRegistersOp = org.graalvm.compiler.lir.StandardOp$SaveRegistersOp of org.graalvm.compiler.lir.StandardOp
RuntimeVisibleAnnotations:
org.graalvm.compiler.lir.Opcode(value = "LEAVE_UNPACK_FRAMES_STACK_FRAME")