class org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2 implements org.graalvm.compiler.asm.test.AssemblerTest$CodeGenTest
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2
super_class: java.lang.Object
{
final org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest this$0;
descriptor: Lorg/graalvm/compiler/asm/amd64/test/SimpleAssemblerTest;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest);
descriptor: (Lorg/graalvm/compiler/asm/amd64/test/SimpleAssemblerTest;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2 this
0: .line 76
aload 0 /* this */
aload 1
putfield org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2.this$0:Lorg/graalvm/compiler/asm/amd64/test/SimpleAssemblerTest;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/asm/amd64/test/SimpleAssemblerTest$2;
MethodParameters:
Name Flags
this$0 final
public byte[] generateCode(org.graalvm.compiler.code.CompilationResult, jdk.vm.ci.code.TargetDescription, jdk.vm.ci.code.RegisterConfig, jdk.vm.ci.code.CallingConvention);
descriptor: (Lorg/graalvm/compiler/code/CompilationResult;Ljdk/vm/ci/code/TargetDescription;Ljdk/vm/ci/code/RegisterConfig;Ljdk/vm/ci/code/CallingConvention;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=5
start local 0 // org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2 this
start local 1 // org.graalvm.compiler.code.CompilationResult compResult
start local 2 // jdk.vm.ci.code.TargetDescription target
start local 3 // jdk.vm.ci.code.RegisterConfig registerConfig
start local 4 // jdk.vm.ci.code.CallingConvention cc
0: .line 80
new org.graalvm.compiler.asm.amd64.AMD64MacroAssembler
dup
aload 2 /* target */
invokespecial org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.<init>:(Ljdk/vm/ci/code/TargetDescription;)V
astore 5 /* asm */
start local 5 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
1: .line 81
aload 3 /* registerConfig */
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 6 /* ret */
start local 6 // jdk.vm.ci.code.Register ret
2: .line 82
new org.graalvm.compiler.code.DataSection$SerializableData
dup
ldc 84.72
invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
bipush 8
invokespecial org.graalvm.compiler.code.DataSection$SerializableData.<init>:(Ljdk/vm/ci/meta/SerializableConstant;I)V
astore 7 /* data */
start local 7 // org.graalvm.compiler.code.DataSection$Data data
3: .line 83
aload 1 /* compResult */
invokevirtual org.graalvm.compiler.code.CompilationResult.getDataSection:()Lorg/graalvm/compiler/code/DataSection;
aload 7 /* data */
invokevirtual org.graalvm.compiler.code.DataSection.insertData:(Lorg/graalvm/compiler/code/DataSection$Data;)Ljdk/vm/ci/code/site/DataSectionReference;
astore 8 /* ref */
start local 8 // jdk.vm.ci.code.site.DataSectionReference ref
4: .line 84
aload 1 /* compResult */
aload 5 /* asm */
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.position:()I
aload 8 /* ref */
invokevirtual org.graalvm.compiler.code.CompilationResult.recordDataPatch:(ILjdk/vm/ci/code/site/Reference;)V
5: .line 85
aload 5 /* asm */
aload 6 /* ret */
aload 5 /* asm */
iconst_m1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.getPlaceholder:(I)Lorg/graalvm/compiler/asm/amd64/AMD64Address;
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.movdbl:(Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/amd64/AMD64Address;)V
6: .line 86
aload 5 /* asm */
iconst_0
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.ret:(I)V
7: .line 87
aload 5 /* asm */
iconst_1
invokevirtual org.graalvm.compiler.asm.amd64.AMD64MacroAssembler.close:(Z)[B
areturn
end local 8 // jdk.vm.ci.code.site.DataSectionReference ref
end local 7 // org.graalvm.compiler.code.DataSection$Data data
end local 6 // jdk.vm.ci.code.Register ret
end local 5 // org.graalvm.compiler.asm.amd64.AMD64MacroAssembler asm
end local 4 // jdk.vm.ci.code.CallingConvention cc
end local 3 // jdk.vm.ci.code.RegisterConfig registerConfig
end local 2 // jdk.vm.ci.code.TargetDescription target
end local 1 // org.graalvm.compiler.code.CompilationResult compResult
end local 0 // org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2 this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/asm/amd64/test/SimpleAssemblerTest$2;
0 8 1 compResult Lorg/graalvm/compiler/code/CompilationResult;
0 8 2 target Ljdk/vm/ci/code/TargetDescription;
0 8 3 registerConfig Ljdk/vm/ci/code/RegisterConfig;
0 8 4 cc Ljdk/vm/ci/code/CallingConvention;
1 8 5 asm Lorg/graalvm/compiler/asm/amd64/AMD64MacroAssembler;
2 8 6 ret Ljdk/vm/ci/code/Register;
3 8 7 data Lorg/graalvm/compiler/code/DataSection$Data;
4 8 8 ref Ljdk/vm/ci/code/site/DataSectionReference;
MethodParameters:
Name Flags
compResult
target
registerConfig
cc
}
SourceFile: "SimpleAssemblerTest.java"
EnclosingMethod: org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest.doubleTest:()V
NestHost: org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest
InnerClasses:
org.graalvm.compiler.asm.amd64.test.SimpleAssemblerTest$2
public abstract CodeGenTest = org.graalvm.compiler.asm.test.AssemblerTest$CodeGenTest of org.graalvm.compiler.asm.test.AssemblerTest
public abstract Data = org.graalvm.compiler.code.DataSection$Data of org.graalvm.compiler.code.DataSection
public final SerializableData = org.graalvm.compiler.code.DataSection$SerializableData of org.graalvm.compiler.code.DataSection