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 // org.graalvm.compiler.lir.aarch64.AArch64Move this
         0: .line 67
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.lir.aarch64.AArch64Move this
      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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.aarch64.AArch64Kind kind
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address dst
        start local 4 // jdk.vm.ci.meta.Value src
         0: .line 350
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
            bipush 8
            imul
            istore 5 /* destSize */
        start local 5 // int destSize
         1: .line 351
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 4
         2: .line 352
            aload 1 /* masm */
            iload 5 /* destSize */
            aload 4 /* src */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 3 /* dst */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.str:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         3: .line 353
            goto 5
         4: .line 354
      StackMap locals: int
      StackMap stack:
            aload 1 /* masm */
            iload 5 /* destSize */
            aload 4 /* src */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 3 /* dst */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fstr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         5: .line 356
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int destSize
        end local 4 // jdk.vm.ci.meta.Value src
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address dst
        end local 2 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.AllocatableValue result
        start local 3 // jdk.vm.ci.meta.Value input
         0: .line 359
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 8
         1: .line 360
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 4
         2: .line 361
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            aload 3 /* input */
            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: .line 362
            goto 22
      StackMap locals:
      StackMap stack:
         4: aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 7
         5: .line 363
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            aload 3 /* input */
            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: .line 364
            goto 22
         7: .line 365
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
         8: .line 367
      StackMap locals:
      StackMap stack:
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 16
         9: .line 368
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 12
        10: .line 369
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            aload 3 /* input */
            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: .line 370
            goto 22
      StackMap locals:
      StackMap stack:
        12: aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.isStackSlot:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 15
        13: .line 371
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            aload 3 /* input */
            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: .line 372
            goto 22
        15: .line 373
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        16: .line 375
      StackMap locals:
      StackMap stack:
            aload 3 /* input */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 21
        17: .line 376
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 20
        18: .line 377
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            aload 3 /* input */
            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: .line 378
            goto 22
        20: .line 379
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        21: .line 382
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        22: .line 384
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.meta.Value input
        end local 2 // jdk.vm.ci.meta.AllocatableValue result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.AllocatableValue result
        start local 3 // jdk.vm.ci.meta.Value input
         0: .line 387
            aconst_null
            astore 4
            aconst_null
            astore 5
         1: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 6 /* r1 */
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister r1
         2: .line 388
            aconst_null
            astore 7
            aconst_null
            astore 8
         3: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 9 /* r2 */
        start local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister r2
         4: .line 389
            aload 6 /* r1 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            astore 10 /* rscratch1 */
        start local 10 // jdk.vm.ci.code.Register rscratch1
         5: .line 390
            aload 9 /* r2 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            astore 11 /* rscratch2 */
        start local 11 // jdk.vm.ci.code.Register rscratch2
         6: .line 392
            aload 3 /* input */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            astore 12 /* kind */
        start local 12 // jdk.vm.ci.meta.PlatformKind kind
         7: .line 393
            aload 12 /* kind */
            invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
            bipush 8
            imul
            istore 13 /* size */
        start local 13 // int size
         8: .line 396
            aload 0 /* crb */
            ldc "[stack -> stack copy]"
            invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.blockComment:(Ljava/lang/String;)V
         9: .line 397
            aload 0 /* crb */
            aload 1 /* masm */
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
            aload 11 /* rscratch2 */
            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 /* src */
        start local 14 // org.graalvm.compiler.asm.aarch64.AArch64Address src
        10: .line 398
            aload 1 /* masm */
            iload 13 /* size */
            aload 10 /* rscratch1 */
            aload 14 /* src */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
        11: .line 399
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
            aload 11 /* rscratch2 */
            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 /* dst */
        start local 15 // org.graalvm.compiler.asm.aarch64.AArch64Address dst
        12: .line 400
            aload 1 /* masm */
            iload 13 /* size */
            aload 10 /* rscratch1 */
            aload 15 /* dst */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.str:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
        end local 15 // org.graalvm.compiler.asm.aarch64.AArch64Address dst
        end local 14 // org.graalvm.compiler.asm.aarch64.AArch64Address src
        end local 13 // int size
        end local 12 // jdk.vm.ci.meta.PlatformKind kind
        end local 11 // jdk.vm.ci.code.Register rscratch2
        end local 10 // jdk.vm.ci.code.Register rscratch1
        13: .line 401
            aload 9 /* r2 */
            ifnull 19
            aload 9 /* r2 */
            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 /* r2 */
            ifnull 15
            aload 9 /* r2 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister r2
      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: .line 402
      StackMap locals:
      StackMap stack:
            aload 6 /* r1 */
            ifnull 25
            aload 6 /* r1 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 25
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 4
            aload 6 /* r1 */
            ifnull 21
            aload 6 /* r1 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister r1
      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: .line 403
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.meta.Value input
        end local 2 // jdk.vm.ci.meta.AllocatableValue result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.AllocatableValue result
        start local 3 // jdk.vm.ci.meta.AllocatableValue input
         0: .line 406
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 4 /* dst */
        start local 4 // jdk.vm.ci.code.Register dst
         1: .line 407
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 5 /* src */
        start local 5 // jdk.vm.ci.code.Register src
         2: .line 408
            aload 5 /* src */
            aload 4 /* dst */
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 409
            return
         4: .line 411
      StackMap locals: jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack:
            aload 3 /* input */
            invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 6 /* kind */
        start local 6 // jdk.vm.ci.aarch64.AArch64Kind kind
         5: .line 412
            aload 6 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
            bipush 8
            imul
            istore 7 /* size */
        start local 7 // int size
         6: .line 413
            aload 6 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 9
         7: .line 414
            aload 1 /* masm */
            iload 7 /* size */
            aload 4 /* dst */
            aload 5 /* src */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
         8: .line 415
            goto 10
         9: .line 416
      StackMap locals: jdk.vm.ci.aarch64.AArch64Kind int
      StackMap stack:
            aload 1 /* masm */
            iload 7 /* size */
            aload 4 /* dst */
            aload 5 /* src */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        10: .line 418
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int size
        end local 6 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 5 // jdk.vm.ci.code.Register src
        end local 4 // jdk.vm.ci.code.Register dst
        end local 3 // jdk.vm.ci.meta.AllocatableValue input
        end local 2 // jdk.vm.ci.meta.AllocatableValue result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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   

  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: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.AllocatableValue result
        start local 3 // jdk.vm.ci.meta.AllocatableValue input
         0: .line 421
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            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 /* dest */
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address dest
         1: .line 422
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 5 /* src */
        start local 5 // jdk.vm.ci.code.Register src
         2: .line 424
            aload 2 /* result */
            invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 6 /* kind */
        start local 6 // jdk.vm.ci.aarch64.AArch64Kind kind
         3: .line 425
            aload 6 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
            bipush 8
            imul
            istore 7 /* size */
        start local 7 // int size
         4: .line 426
            aload 6 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 7
         5: .line 427
            aload 1 /* masm */
            iload 7 /* size */
            aload 5 /* src */
            aload 4 /* dest */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.str:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         6: .line 428
            goto 8
         7: .line 429
      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 /* masm */
            iload 7 /* size */
            aload 5 /* src */
            aload 4 /* dest */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fstr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         8: .line 431
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int size
        end local 6 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 5 // jdk.vm.ci.code.Register src
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address dest
        end local 3 // jdk.vm.ci.meta.AllocatableValue input
        end local 2 // jdk.vm.ci.meta.AllocatableValue result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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   

  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: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=11, args_size=4
        start local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.AllocatableValue result
        start local 3 // jdk.vm.ci.meta.AllocatableValue input
         0: .line 434
            aload 3 /* input */
            invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 4 /* kind */
        start local 4 // jdk.vm.ci.aarch64.AArch64Kind kind
         1: .line 436
            aload 4 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
            bipush 8
            imul
            istore 5 /* size */
        start local 5 // int size
         2: .line 437
            aload 4 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 6
         3: .line 438
            aload 0 /* crb */
            aload 1 /* masm */
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
            aload 2 /* result */
            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 /* src */
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Address src
         4: .line 439
            aload 1 /* masm */
            iload 5 /* size */
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 6 /* src */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.ldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Address src
         5: .line 440
            goto 17
         6: .line 441
      StackMap locals: jdk.vm.ci.aarch64.AArch64Kind int
      StackMap stack:
            aconst_null
            astore 6
            aconst_null
            astore 7
         7: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 8 /* sc */
        start local 8 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
         8: .line 442
            aload 8 /* sc */
            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 /* input */
            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 /* scratchRegisterValue */
        start local 9 // jdk.vm.ci.meta.AllocatableValue scratchRegisterValue
         9: .line 443
            aload 0 /* crb */
            aload 1 /* masm */
            aload 3 /* input */
            invokestatic jdk.vm.ci.code.ValueUtil.asStackSlot:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/StackSlot;
            aload 9 /* scratchRegisterValue */
            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 /* src */
        start local 10 // org.graalvm.compiler.asm.aarch64.AArch64Address src
        10: .line 444
            aload 1 /* masm */
            iload 5 /* size */
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            aload 10 /* src */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fldr:(ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
        end local 10 // org.graalvm.compiler.asm.aarch64.AArch64Address src
        end local 9 // jdk.vm.ci.meta.AllocatableValue scratchRegisterValue
        11: .line 445
            aload 8 /* sc */
            ifnull 17
            aload 8 /* sc */
            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 /* sc */
            ifnull 13
            aload 8 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 8 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
      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: .line 447
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int size
        end local 4 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 3 // jdk.vm.ci.meta.AllocatableValue input
        end local 2 // jdk.vm.ci.meta.AllocatableValue result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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=11, args_size=4
        start local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.Value result
        start local 3 // jdk.vm.ci.meta.JavaConstant input
         0: .line 450
            aload 2 /* result */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            astore 4 /* dst */
        start local 4 // jdk.vm.ci.code.Register dst
         1: .line 451
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 3 /* input */
            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: 32
                    9: 49
              default: 58
          }
         2: .line 453
      StackMap locals: jdk.vm.ci.code.Register
      StackMap stack:
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 5 /* value */
        start local 5 // int value
         3: .line 455
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64Move.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 3 /* input */
            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: .line 458
      StackMap locals: int
      StackMap stack:
            iload 5 /* value */
            sipush 255
            iand
            istore 6 /* maskedValue */
        start local 6 // int maskedValue
         5: .line 459
            goto 11
        end local 6 // int maskedValue
         6: .line 462
      StackMap locals:
      StackMap stack:
            iload 5 /* value */
            ldc 65535
            iand
            istore 6 /* maskedValue */
        start local 6 // int maskedValue
         7: .line 463
            goto 11
        end local 6 // int maskedValue
         8: .line 465
      StackMap locals:
      StackMap stack:
            iload 5 /* value */
            istore 6 /* maskedValue */
        start local 6 // int maskedValue
         9: .line 466
            goto 11
        end local 6 // int maskedValue
        10: .line 468
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        start local 6 // int maskedValue
        11: .line 470
      StackMap locals: int
      StackMap stack:
            aload 1 /* masm */
            aload 4 /* dst */
            iload 6 /* maskedValue */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;I)V
        12: .line 471
            goto 59
        end local 6 // int maskedValue
        end local 5 // int value
        13: .line 473
      StackMap locals:
      StackMap stack:
            aload 1 /* masm */
            aload 4 /* dst */
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;J)V
        14: .line 474
            goto 59
        15: .line 476
      StackMap locals:
      StackMap stack:
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isFloatImmediate:(F)Z
            ifeq 18
        16: .line 477
            aload 1 /* masm */
            bipush 32
            aload 4 /* dst */
            aload 3 /* input */
            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: .line 478
            goto 59
      StackMap locals:
      StackMap stack:
        18: aload 0 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
            invokevirtual org.graalvm.compiler.code.CompilationResult.isImmutablePIC:()Z
            ifeq 30
        19: .line 479
            aconst_null
            astore 7
            aconst_null
            astore 8
        20: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 9 /* scr */
        start local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister scr
        21: .line 480
            aload 9 /* scr */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            astore 10 /* scratch */
        start local 10 // jdk.vm.ci.code.Register scratch
        22: .line 481
            aload 1 /* masm */
            aload 10 /* scratch */
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asFloat:()F
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;I)V
        23: .line 482
            aload 1 /* masm */
            bipush 32
            aload 4 /* dst */
            aload 10 /* scratch */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        end local 10 // jdk.vm.ci.code.Register scratch
        24: .line 483
            aload 9 /* scr */
            ifnull 59
            aload 9 /* scr */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 59
      StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant jdk.vm.ci.code.Register top top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
      StackMap stack: java.lang.Throwable
        25: astore 7
            aload 9 /* scr */
            ifnull 26
            aload 9 /* scr */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister scr
      StackMap locals:
      StackMap stack:
        26: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        27: astore 8
            aload 7
            ifnonnull 28
            aload 8
            astore 7
            goto 29
      StackMap locals:
      StackMap stack:
        28: aload 7
            aload 8
            if_acmpeq 29
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        29: aload 7
            athrow
        30: .line 485
      StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant jdk.vm.ci.code.Register
      StackMap stack:
            aload 1 /* masm */
            bipush 32
            aload 4 /* dst */
            aload 0 /* crb */
            aload 3 /* input */
            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
        31: .line 487
            goto 59
        32: .line 489
      StackMap locals:
      StackMap stack:
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isDoubleImmediate:(D)Z
            ifeq 35
        33: .line 490
            aload 1 /* masm */
            bipush 64
            aload 4 /* dst */
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;D)V
        34: .line 491
            goto 59
      StackMap locals:
      StackMap stack:
        35: aload 0 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
            invokevirtual org.graalvm.compiler.code.CompilationResult.isImmutablePIC:()Z
            ifeq 47
        36: .line 492
            aconst_null
            astore 7
            aconst_null
            astore 8
        37: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 9 /* scr */
        start local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister scr
        38: .line 493
            aload 9 /* scr */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.getRegister:()Ljdk/vm/ci/code/Register;
            astore 10 /* scratch */
        start local 10 // jdk.vm.ci.code.Register scratch
        39: .line 494
            aload 1 /* masm */
            aload 10 /* scratch */
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asDouble:()D
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;J)V
        40: .line 495
            aload 1 /* masm */
            bipush 64
            aload 4 /* dst */
            aload 10 /* scratch */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.fmov:(ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
        end local 10 // jdk.vm.ci.code.Register scratch
        41: .line 496
            aload 9 /* scr */
            ifnull 59
            aload 9 /* scr */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 59
      StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant jdk.vm.ci.code.Register top top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister
      StackMap stack: java.lang.Throwable
        42: astore 7
            aload 9 /* scr */
            ifnull 43
            aload 9 /* scr */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 9 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister scr
      StackMap locals:
      StackMap stack:
        43: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        44: astore 8
            aload 7
            ifnonnull 45
            aload 8
            astore 7
            goto 46
      StackMap locals:
      StackMap stack:
        45: aload 7
            aload 8
            if_acmpeq 46
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        46: aload 7
            athrow
        47: .line 498
      StackMap locals: org.graalvm.compiler.lir.asm.CompilationResultBuilder org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler jdk.vm.ci.meta.Value jdk.vm.ci.meta.JavaConstant jdk.vm.ci.code.Register
      StackMap stack:
            aload 1 /* masm */
            bipush 64
            aload 4 /* dst */
            aload 0 /* crb */
            aload 3 /* input */
            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
        48: .line 500
            goto 59
        49: .line 502
      StackMap locals:
      StackMap stack:
            aload 3 /* input */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifeq 52
        50: .line 503
            aload 1 /* masm */
            aload 4 /* dst */
            iconst_0
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.mov:(Ljdk/vm/ci/code/Register;I)V
        51: .line 504
            goto 59
      StackMap locals:
      StackMap stack:
        52: aload 0 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.target:Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.inlineObjects:Z
            ifeq 56
        53: .line 505
            aload 0 /* crb */
            aload 3 /* input */
            invokevirtual org.graalvm.compiler.lir.asm.CompilationResultBuilder.recordInlineDataInCode:(Ljdk/vm/ci/meta/Constant;)V
        54: .line 506
            aload 1 /* masm */
            aload 4 /* dst */
            ldc -2401018187971961171
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.movNativeAddress:(Ljdk/vm/ci/code/Register;J)V
        55: .line 507
            goto 59
        56: .line 508
      StackMap locals:
      StackMap stack:
            aload 1 /* masm */
            bipush 64
            aload 4 /* dst */
            aload 0 /* crb */
            aload 3 /* input */
            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
        57: .line 510
            goto 59
        58: .line 512
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "kind="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* input */
            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
        59: .line 514
      StackMap locals:
      StackMap stack:
            return
        end local 4 // jdk.vm.ci.code.Register dst
        end local 3 // jdk.vm.ci.meta.JavaConstant input
        end local 2 // jdk.vm.ci.meta.Value result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   60     0          crb  Lorg/graalvm/compiler/lir/asm/CompilationResultBuilder;
            0   60     1         masm  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler;
            0   60     2       result  Ljdk/vm/ci/meta/Value;
            0   60     3        input  Ljdk/vm/ci/meta/JavaConstant;
            1   60     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
           21   26     9          scr  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
           22   24    10      scratch  Ljdk/vm/ci/code/Register;
           38   43     9          scr  Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
           39   41    10      scratch  Ljdk/vm/ci/code/Register;
      Exception table:
        from    to  target  type
          21    24      25  any
          20    27      27  any
          38    41      42  any
          37    44      44  any
    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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.meta.Value result
        start local 3 // jdk.vm.ci.meta.JavaConstant constant
         0: .line 517
            aconst_null
            astore 4
            aconst_null
            astore 5
         1: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 6 /* addrReg */
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister addrReg
         2: .line 518
            aload 2 /* result */
            checkcast jdk.vm.ci.code.StackSlot
            astore 7 /* slot */
        start local 7 // jdk.vm.ci.code.StackSlot slot
         3: .line 519
            aload 0 /* crb */
            aload 1 /* masm */
            aload 7 /* slot */
            aload 6 /* addrReg */
            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 /* resultAddress */
        start local 8 // org.graalvm.compiler.asm.aarch64.AArch64Address resultAddress
         4: .line 520
            aload 3 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isDefaultForKind:()Z
            ifne 5
            aload 3 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifeq 7
         5: .line 521
      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 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 8 /* resultAddress */
            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 /* result */
            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: .line 522
            goto 18
         7: .line 523
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 9
            aconst_null
            astore 10
         8: aload 1 /* masm */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.getScratchRegister:()Lorg/graalvm/compiler/asm/aarch64/AArch64MacroAssembler$ScratchRegister;
            astore 11 /* sc */
        start local 11 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
         9: .line 524
            aload 11 /* sc */
            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 /* result */
            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 /* scratchRegisterValue */
        start local 12 // jdk.vm.ci.meta.Value scratchRegisterValue
        10: .line 525
            aload 0 /* crb */
            aload 1 /* masm */
            aload 12 /* scratchRegisterValue */
            aload 3 /* constant */
            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: .line 526
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* result */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 8 /* resultAddress */
            aload 12 /* scratchRegisterValue */
            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 // jdk.vm.ci.meta.Value scratchRegisterValue
        12: .line 527
            aload 11 /* sc */
            ifnull 18
            aload 11 /* sc */
            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 /* sc */
            ifnull 14
            aload 11 /* sc */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 11 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister sc
      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 // org.graalvm.compiler.asm.aarch64.AArch64Address resultAddress
        end local 7 // jdk.vm.ci.code.StackSlot slot
        18: .line 529
      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 /* addrReg */
            ifnull 24
            aload 6 /* addrReg */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
            goto 24
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: astore 4
            aload 6 /* addrReg */
            ifnull 20
            aload 6 /* addrReg */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister.close:()V
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler$ScratchRegister addrReg
      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: .line 530
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.meta.JavaConstant constant
        end local 2 // jdk.vm.ci.meta.Value result
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.code.StackSlot slot
        start local 3 // jdk.vm.ci.meta.AllocatableValue scratch
         0: .line 547
            getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
            aload 3 /* scratch */
            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 /* scratch */
            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 /* scratchReg */
        start local 4 // jdk.vm.ci.code.Register scratchReg
         3: .line 548
            aload 0 /* crb */
            aload 1 /* masm */
            aload 2 /* slot */
            aload 4 /* scratchReg */
            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 // jdk.vm.ci.code.Register scratchReg
        end local 3 // jdk.vm.ci.meta.AllocatableValue scratch
        end local 2 // jdk.vm.ci.code.StackSlot slot
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        start local 2 // jdk.vm.ci.code.StackSlot slot
        start local 3 // jdk.vm.ci.code.Register scratchReg
         0: .line 552
            aload 0 /* crb */
            getfield org.graalvm.compiler.lir.asm.CompilationResultBuilder.frameMap:Lorg/graalvm/compiler/lir/framemap/FrameMap;
            aload 2 /* slot */
            invokevirtual org.graalvm.compiler.lir.framemap.FrameMap.offsetForStackSlot:(Ljdk/vm/ci/code/StackSlot;)I
            istore 4 /* displacement */
        start local 4 // int displacement
         1: .line 553
            aload 2 /* slot */
            invokevirtual jdk.vm.ci.code.StackSlot.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
            istore 5 /* transferSize */
        start local 5 // int transferSize
         2: .line 554
            aload 1 /* masm */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            iload 4 /* displacement */
            i2l
            aload 3 /* scratchReg */
            iload 5 /* transferSize */
            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 // int transferSize
        end local 4 // int displacement
        end local 3 // jdk.vm.ci.code.Register scratchReg
        end local 2 // jdk.vm.ci.code.StackSlot slot
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler masm
        end local 0 // org.graalvm.compiler.lir.asm.CompilationResultBuilder crb
      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: .line 67
            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$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 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