public class org.graalvm.compiler.lir.aarch64.AArch64Move
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.lir.aarch64.AArch64Move
super_class: java.lang.Object
{
private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/lir/aarch64/AArch64Move;
private static void emitStore(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.aarch64.AArch64Kind, org.graalvm.compiler.asm.aarch64.AArch64Address, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/aarch64/AArch64Kind;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Ljdk/vm/ci/meta/Value;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
bipush 8
imul
istore 5
start local 5 1: aload 2
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
ifeq 4
2: aload 1
iload 5
aload 4
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
aload 3
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.str:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
3: goto 5
4: StackMap locals: int
StackMap stack:
aload 1
iload 5
aload 4
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
aload 3
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fstr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
5: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 6 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 6 2 kind Ljdk/vm/ci/aarch64/AArch64Kind;
0 6 3 dst Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
0 6 4 src Ljdk/vm/ci/meta/Value;
1 6 5 destSize I
MethodParameters:
Name Flags
crb
masm
kind
dst
src
public static void move(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 8
1: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 4
2: aload 0
aload 1
aload 2
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asAllocatableValue:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.reg2reg:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
3: goto 22
StackMap locals:
StackMap stack:
4: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 7
5: aload 0
aload 1
aload 2
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asAllocatableValue:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.reg2stack:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
6: goto 22
7: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
8: StackMap locals:
StackMap stack:
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 16
9: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 12
10: aload 0
aload 1
aload 2
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asAllocatableValue:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.stack2reg:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
11: goto 22
StackMap locals:
StackMap stack:
12: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
ifeq 15
13: aload 0
aload 1
aload 2
aload 3
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.emitStackMove:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
14: goto 22
15: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
16: StackMap locals:
StackMap stack:
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
ifeq 21
17: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
ifeq 20
18: aload 0
aload 1
aload 2
aload 3
invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.const2reg:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/JavaConstant;)V
19: goto 22
20: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
21: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
22: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 23 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 23 2 result Ljdk/vm/ci/meta/AllocatableValue;
0 23 3 input Ljdk/vm/ci/meta/Value;
MethodParameters:
Name Flags
crb
masm
result
input
private static void emitStackMove(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.Value);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=16, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 4
aconst_null
astore 5
1: aload 1
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
astore 6
start local 6 2: aconst_null
astore 7
aconst_null
astore 8
3: aload 1
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
astore 9
start local 9 4: aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
astore 10
start local 10 5: aload 9
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
astore 11
start local 11 6: aload 3
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
astore 12
start local 12 7: aload 12
invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
bipush 8
imul
istore 13
start local 13 8: aload 0
ldc "[stack -> stack copy]"
invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.blockComment:(Ljava/lang/String;)V
9: aload 0
aload 1
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
aload 11
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
astore 14
start local 14 10: aload 1
iload 13
aload 10
aload 14
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
11: aload 0
aload 1
aload 2
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
aload 11
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
astore 15
start local 15 12: aload 1
iload 13
aload 10
aload 15
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.str:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 13: aload 9
ifnull 19
aload 9
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
goto 19
StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.Value java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
StackMap stack: java.lang.Throwable
14: astore 7
aload 9
ifnull 15
aload 9
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
end local 9 StackMap locals:
StackMap stack:
15: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 8
aload 7
ifnonnull 17
aload 8
astore 7
goto 18
StackMap locals:
StackMap stack:
17: aload 7
aload 8
if_acmpeq 18
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 7
athrow
19: StackMap locals:
StackMap stack:
aload 6
ifnull 25
aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
goto 25
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 4
aload 6
ifnull 21
aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
end local 6 StackMap locals:
StackMap stack:
21: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
22: astore 5
aload 4
ifnonnull 23
aload 5
astore 4
goto 24
StackMap locals:
StackMap stack:
23: aload 4
aload 5
if_acmpeq 24
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
24: aload 4
athrow
25: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 26 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 26 2 result Ljdk/vm/ci/meta/AllocatableValue;
0 26 3 input Ljdk/vm/ci/meta/Value;
2 21 6 r1 Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
4 15 9 r2 Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
5 13 10 rscratch1 Ljdk/vm/ci/code/Register;
6 13 11 rscratch2 Ljdk/vm/ci/code/Register;
7 13 12 kind Ljdk/vm/ci/meta/PlatformKind;
8 13 13 size I
10 13 14 src Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
12 13 15 dst Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
Exception table:
from to target type
4 13 14 any
3 16 16 any
2 19 20 any
1 22 22 any
MethodParameters:
Name Flags
crb
masm
result
input
private static void reg2reg(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
astore 4
start local 4 1: aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
astore 5
start local 5 2: aload 5
aload 4
invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
ifeq 4
3: return
4: StackMap locals: jdk.vm.ci.code.Register jdk.vm.ci.code.Register
StackMap stack:
aload 3
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.aarch64.AArch64Kind
astore 6
start local 6 5: aload 6
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
bipush 8
imul
istore 7
start local 7 6: aload 6
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
ifeq 9
7: aload 1
iload 7
aload 4
aload 5
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
8: goto 10
9: StackMap locals: jdk.vm.ci.aarch64.AArch64Kind int
StackMap stack:
aload 1
iload 7
aload 4
aload 5
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
10: StackMap locals:
StackMap stack:
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 11 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 11 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 11 2 result Ljdk/vm/ci/meta/AllocatableValue;
0 11 3 input Ljdk/vm/ci/meta/AllocatableValue;
1 11 4 dst Ljdk/vm/ci/code/Register;
2 11 5 src Ljdk/vm/ci/code/Register;
5 11 6 kind Ljdk/vm/ci/aarch64/AArch64Kind;
6 11 7 size I
MethodParameters:
Name Flags
crb
masm
result
input
private static void reg2stack(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
astore 4
start local 4 1: aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
astore 5
start local 5 2: aload 2
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.aarch64.AArch64Kind
astore 6
start local 6 3: aload 6
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
bipush 8
imul
istore 7
start local 7 4: aload 6
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
ifeq 7
5: aload 1
iload 7
aload 5
aload 4
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.str:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
6: goto 8
7: StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.AllocatableValue org.graalvm.compiler.asm.aarch64.AArch64Address jdk.vm.ci.code.Register jdk.vm.ci.aarch64.AArch64Kind int
StackMap stack:
aload 1
iload 7
aload 5
aload 4
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fstr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
8: StackMap locals:
StackMap stack:
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 9 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 9 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 9 2 result Ljdk/vm/ci/meta/AllocatableValue;
0 9 3 input Ljdk/vm/ci/meta/AllocatableValue;
1 9 4 dest Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
2 9 5 src Ljdk/vm/ci/code/Register;
3 9 6 kind Ljdk/vm/ci/aarch64/AArch64Kind;
4 9 7 size I
MethodParameters:
Name Flags
crb
masm
result
input
private static void stack2reg(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.aarch64.AArch64Kind
astore 4
start local 4 1: aload 4
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
bipush 8
imul
istore 5
start local 5 2: aload 4
invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
ifeq 6
3: aload 0
aload 1
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
aload 2
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
astore 6
start local 6 4: aload 1
iload 5
aload 2
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
end local 6 5: goto 17
6: StackMap locals: jdk.vm.ci.aarch64.AArch64Kind int
StackMap stack:
aconst_null
astore 6
aconst_null
astore 7
7: aload 1
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
astore 8
start local 8 8: aload 8
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 3
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 9
start local 9 9: aload 0
aload 1
aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
aload 9
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
astore 10
start local 10 10: aload 1
iload 5
aload 2
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
aload 10
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
end local 10 end local 9 11: aload 8
ifnull 17
aload 8
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
goto 17
StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.aarch64.AArch64Kind int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
StackMap stack: java.lang.Throwable
12: astore 6
aload 8
ifnull 13
aload 8
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
end local 8 StackMap locals:
StackMap stack:
13: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 7
aload 6
ifnonnull 15
aload 7
astore 6
goto 16
StackMap locals:
StackMap stack:
15: aload 6
aload 7
if_acmpeq 16
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 6
athrow
17: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 18 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 18 2 result Ljdk/vm/ci/meta/AllocatableValue;
0 18 3 input Ljdk/vm/ci/meta/AllocatableValue;
1 18 4 kind Ljdk/vm/ci/aarch64/AArch64Kind;
2 18 5 size I
4 5 6 src Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
8 13 8 sc Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
9 11 9 scratchRegisterValue Ljdk/vm/ci/meta/AllocatableValue;
10 11 10 src Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
Exception table:
from to target type
8 11 12 any
7 14 14 any
MethodParameters:
Name Flags
crb
masm
result
input
private static void const2reg(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.JavaConstant);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/JavaConstant;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
astore 4
start local 4 1: invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iaload
tableswitch { // 5 - 9
5: 2
6: 15
7: 13
8: 20
9: 25
default: 34
}
2: StackMap locals: jdk.vm.ci.code.Register
StackMap stack:
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
istore 5
start local 5 3: invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iaload
tableswitch { // 1 - 5
1: 4
2: 4
3: 6
4: 6
5: 8
default: 10
}
4: StackMap locals: int
StackMap stack:
iload 5
sipush 255
iand
istore 6
start local 6 5: goto 11
end local 6 6: StackMap locals:
StackMap stack:
iload 5
ldc 65535
iand
istore 6
start local 6 7: goto 11
end local 6 8: StackMap locals:
StackMap stack:
iload 5
istore 6
start local 6 9: goto 11
end local 6 10: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
athrow
start local 6 11: StackMap locals: int
StackMap stack:
aload 1
aload 4
iload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;I)V
12: goto 35
end local 6 end local 5 13: StackMap locals:
StackMap stack:
aload 1
aload 4
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;J)V
14: goto 35
15: StackMap locals:
StackMap stack:
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isFloatImmediate:(F)Z
ifeq 18
16: aload 1
bipush 32
aload 4
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
f2d
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;D)V
17: goto 35
18: StackMap locals:
StackMap stack:
aload 1
bipush 32
aload 4
aload 0
aload 3
invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.asFloatConstRef:(Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/asm/AbstractAddress;
checkcast org.graalvm.compiler.asm.aarch64.AArch64Address
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
19: goto 35
20: StackMap locals:
StackMap stack:
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isDoubleImmediate:(D)Z
ifeq 23
21: aload 1
bipush 64
aload 4
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;D)V
22: goto 35
23: StackMap locals:
StackMap stack:
aload 1
bipush 64
aload 4
aload 0
aload 3
invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.asDoubleConstRef:(Ljdk/vm/ci/meta/JavaConstant;)Lorg/graalvm/compiler/asm/AbstractAddress;
checkcast org.graalvm.compiler.asm.aarch64.AArch64Address
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
24: goto 35
25: StackMap locals:
StackMap stack:
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
ifeq 28
26: aload 1
aload 4
iconst_0
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;I)V
27: goto 35
StackMap locals:
StackMap stack:
28: aload 0
getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
getfield jdk.vm.ci.code.TargetDescription.inlineObjects:Z
ifeq 32
29: aload 0
aload 3
invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.recordInlineDataInCode:(Ljdk/vm/ci/meta/Constant;)V
30: aload 1
aload 4
ldc -2401018187971961171
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.movNativeAddress:(Ljdk/vm/ci/code/Register;J)V
31: goto 35
32: StackMap locals:
StackMap stack:
aload 1
bipush 64
aload 4
aload 0
aload 3
bipush 8
invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.recordDataReferenceInCode:(Ljdk/vm/ci/meta/Constant;I)Lorg/graalvm/compiler/asm/AbstractAddress;
checkcast org.graalvm.compiler.asm.aarch64.AArch64Address
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
33: goto 35
34: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "kind="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
35: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 36 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 36 2 result Ljdk/vm/ci/meta/Value;
0 36 3 input Ljdk/vm/ci/meta/JavaConstant;
1 36 4 dst Ljdk/vm/ci/code/Register;
3 13 5 value I
5 6 6 maskedValue I
7 8 6 maskedValue I
9 10 6 maskedValue I
11 13 6 maskedValue I
MethodParameters:
Name Flags
crb
masm
result
input
private static void const2stack(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.JavaConstant);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/JavaConstant;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 4
aconst_null
astore 5
1: aload 1
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
astore 6
start local 6 2: aload 2
checkcast jdk.vm.ci.code.StackSlot
astore 7
start local 7 3: aload 0
aload 1
aload 7
aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
astore 8
start local 8 4: aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.isDefaultForKind:()Z
ifne 5
aload 3
invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
ifeq 7
5: StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister jdk.vm.ci.code.StackSlot org.graalvm.compiler.asm.aarch64.AArch64Address
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.aarch64.AArch64Kind
aload 8
getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.emitStore:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/aarch64/AArch64Kind;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Ljdk/vm/ci/meta/Value;)V
6: goto 18
7: StackMap locals:
StackMap stack:
aconst_null
astore 9
aconst_null
astore 10
8: aload 1
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
astore 11
start local 11 9: aload 11
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
iconst_1
anewarray jdk.vm.ci.meta.Value
dup
iconst_0
aload 2
aastore
invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
astore 12
start local 12 10: aload 0
aload 1
aload 12
aload 3
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.const2reg:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/JavaConstant;)V
11: aload 0
aload 1
aload 2
invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
checkcast jdk.vm.ci.aarch64.AArch64Kind
aload 8
aload 12
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.emitStore:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/aarch64/AArch64Kind;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Ljdk/vm/ci/meta/Value;)V
end local 12 12: aload 11
ifnull 18
aload 11
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
goto 18
StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister jdk.vm.ci.code.StackSlot org.graalvm.compiler.asm.aarch64.AArch64Address java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
StackMap stack: java.lang.Throwable
13: astore 9
aload 11
ifnull 14
aload 11
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
end local 11 StackMap locals:
StackMap stack:
14: aload 9
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 10
aload 9
ifnonnull 16
aload 10
astore 9
goto 17
StackMap locals:
StackMap stack:
16: aload 9
aload 10
if_acmpeq 17
aload 9
aload 10
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 9
athrow
end local 8 end local 7 18: StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
StackMap stack:
aload 6
ifnull 24
aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
goto 24
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 4
aload 6
ifnull 20
aload 6
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
end local 6 StackMap locals:
StackMap stack:
20: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 5
aload 4
ifnonnull 22
aload 5
astore 4
goto 23
StackMap locals:
StackMap stack:
22: aload 4
aload 5
if_acmpeq 23
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
23: aload 4
athrow
24: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 25 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 25 2 result Ljdk/vm/ci/meta/Value;
0 25 3 constant Ljdk/vm/ci/meta/JavaConstant;
2 20 6 addrReg Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
3 18 7 slot Ljdk/vm/ci/code/StackSlot;
4 18 8 resultAddress Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
9 14 11 sc Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
10 12 12 scratchRegisterValue Ljdk/vm/ci/meta/Value;
Exception table:
from to target type
9 12 13 any
8 15 15 any
2 18 19 any
1 21 21 any
MethodParameters:
Name Flags
crb
masm
result
constant
private static org.graalvm.compiler.asm.aarch64.AArch64Address loadStackSlotAddress(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.code.StackSlot, jdk.vm.ci.meta.AllocatableValue);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
aload 3
invokevirtual jdk.vm.ci.meta.AllocatableValue.equals:(Ljava/lang/Object;)Z
ifeq 1
getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
goto 2
StackMap locals:
StackMap stack:
1: aload 3
invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
StackMap locals:
StackMap stack: jdk.vm.ci.code.Register
2: astore 4
start local 4 3: aload 0
aload 1
aload 2
aload 4
invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.loadStackSlotAddress:(Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 4 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 4 2 slot Ljdk/vm/ci/code/StackSlot;
0 4 3 scratch Ljdk/vm/ci/meta/AllocatableValue;
3 4 4 scratchReg Ljdk/vm/ci/code/Register;
MethodParameters:
Name Flags
crb
masm
slot
scratch
private static org.graalvm.compiler.asm.aarch64.AArch64Address loadStackSlotAddress(org.graalvm.compiler.lir.asm.CompilationResultBuilder, org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler, jdk.vm.ci.code.StackSlot, jdk.vm.ci.code.Register);
descriptor: (Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;Ljdk/vm/ci/code/StackSlot;Ljdk/vm/ci/code/Register;)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.frameMap:Lorg/graalvm/compiler/lir/framemap/FrameMap;
aload 2
invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.offsetForStackSlot:(Ljdk/vm/ci/code/StackSlot;)I
istore 4
start local 4 1: aload 2
invokevirtual jdk.vm.ci.code.StackSlot.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
istore 5
start local 5 2: aload 1
getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
iload 4
i2l
aload 3
iload 5
iconst_0
invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.makeAddress:(Ljdk/vm/ci/code/Register;JLjdk/vm/ci/code/Register;IZ)Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
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 3 0 crb Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
0 3 1 masm Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
0 3 2 slot Ljdk/vm/ci/code/StackSlot;
0 3 3 scratchReg Ljdk/vm/ci/code/Register;
1 3 4 displacement I
2 3 5 transferSize I
MethodParameters:
Name Flags
crb
masm
slot
scratchReg
static int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.graalvm.compiler.lir.aarch64.AArch64Move.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 8
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 6
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 11
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_5
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 7
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 9
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
iconst_3
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
bipush 10
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
dup
putstatic org.graalvm.compiler.lir.aarch64.AArch64Move.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
}
SourceFile: "AArch64Move.java"
NestMembers:
org.graalvm.compiler.lir.aarch64.AArch64Move$CompareAndSwapOp org.graalvm.compiler.lir.aarch64.AArch64Move$LoadAddressOp org.graalvm.compiler.lir.aarch64.AArch64Move$LoadDataOp org.graalvm.compiler.lir.aarch64.AArch64Move$LoadInlineConstant org.graalvm.compiler.lir.aarch64.AArch64Move$LoadOp org.graalvm.compiler.lir.aarch64.AArch64Move$MemOp org.graalvm.compiler.lir.aarch64.AArch64Move$MembarOp org.graalvm.compiler.lir.aarch64.AArch64Move$Move org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp org.graalvm.compiler.lir.aarch64.AArch64Move$StackLoadAddressOp org.graalvm.compiler.lir.aarch64.AArch64Move$StoreConstantOp org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp
InnerClasses:
public ScratchRegister = org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister of org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler
public CompareAndSwapOp = org.graalvm.compiler.lir.aarch64.AArch64Move$CompareAndSwapOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public LoadAddressOp = org.graalvm.compiler.lir.aarch64.AArch64Move$LoadAddressOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public LoadDataOp = org.graalvm.compiler.lir.aarch64.AArch64Move$LoadDataOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public LoadInlineConstant = org.graalvm.compiler.lir.aarch64.AArch64Move$LoadInlineConstant of org.graalvm.compiler.lir.aarch64.AArch64Move
public final LoadOp = org.graalvm.compiler.lir.aarch64.AArch64Move$LoadOp of org.graalvm.compiler.lir.aarch64.AArch64Move
abstract MemOp = org.graalvm.compiler.lir.aarch64.AArch64Move$MemOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public MembarOp = org.graalvm.compiler.lir.aarch64.AArch64Move$MembarOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public Move = org.graalvm.compiler.lir.aarch64.AArch64Move$Move of org.graalvm.compiler.lir.aarch64.AArch64Move
public final NullCheckOp = org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public StackLoadAddressOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StackLoadAddressOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public final StoreConstantOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StoreConstantOp of org.graalvm.compiler.lir.aarch64.AArch64Move
public StoreOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp of org.graalvm.compiler.lir.aarch64.AArch64Move