public abstract class org.graalvm.compiler.asm.aarch64.AArch64Assembler extends org.graalvm.compiler.asm.Assembler
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.asm.aarch64.AArch64Assembler
  super_class: org.graalvm.compiler.asm.Assembler
{
  private static final int RdOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int Rs1Offset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int Rs2Offset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  private static final int Rs3Offset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int RtOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  private static final int RnOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int Rt2Offset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int ImmediateOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int ImmediateRotateOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  private static final int ImmediateSizeOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  private static final int ExtendTypeOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  private static final int AddSubImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 285212672

  private static final int AddSubShift12;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 4194304

  private static final int AddSubSetFlag;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 536870912

  private static final int LogicalImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 301989888

  private static final int MoveWideImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 310378496

  private static final int MoveWideImmOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int MoveWideShiftOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 21

  private static final int BitfieldImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 318767104

  private static final int AddSubShiftedOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 184549376

  private static final int ShiftTypeOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  private static final int AddSubExtendedOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 186646528

  private static final int MulOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 452984832

  private static final int DataProcessing1SourceOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1522532352

  private static final int DataProcessing2SourceOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 448790528

  private static final int Fp1SourceOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 505430016

  private static final int Fp2SourceOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 505415680

  private static final int Fp3SourceOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 520093696

  private static final int FpConvertOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 505413632

  private static final int FpImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 505417728

  private static final int FpImmOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 13

  private static final int FpCmpOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 505421824

  private static final int FpCmpeOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 505421840

  private static final int PcRelImmHiOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int PcRelImmLoOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 29

  private static final int PcRelImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 268435456

  private static final int UnconditionalBranchImmOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 335544320

  private static final int UnconditionalBranchRegOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -704643072

  private static final int CompareBranchOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 872415232

  private static final int ConditionalBranchImmOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int ConditionalSelectOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 444596224

  private static final int ConditionalConditionOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  private static final int LoadStoreScaledOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 956301312

  private static final int LoadStoreUnscaledOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 939524096

  private static final int LoadStoreRegisterOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 941623296

  private static final int LoadLiteralOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 402653184

  private static final int LoadStorePostIndexedOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 939525120

  private static final int LoadStorePreIndexedOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 939527168

  private static final int LoadStoreUnscaledImmOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  private static final int LoadStoreScaledImmOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int LoadStoreScaledRegOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  private static final int LoadStoreIndexedImmOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  private static final int LoadStoreTransferSizeOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  private static final int LoadStoreFpFlagOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 26

  private static final int LoadLiteralImmeOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int LoadStorePairOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 671088640

  private static final int LoadStorePairPostIndexOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 679477248

  private static final int LoadStorePairPreIndexOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 696254464

  private static final int LoadStorePairImm7Offset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  private static final int LogicalShiftOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 167772160

  private static final int ExceptionOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -738197504

  private static final int SystemImmediateOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5

  private static final int SimdImmediateOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  private static final int BarrierOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -721211361

  private static final int BarrierKindOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  private static final int CASAcquireOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  private static final int CASReleaseOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  private static final int LDADDAcquireOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 23

  private static final int LDADDReleaseOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  private static final int SIMDImm5Offset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  private static final int SIMDQBitOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 30

  private static final int SIMDSizeOffset;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 22

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 143
            ldc Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
         3: .line 542
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static int rd(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 345
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            iconst_0
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int rs1(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 349
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            iconst_5
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int rs2(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 353
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            bipush 16
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int rs3(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 357
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            bipush 10
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int rt(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 361
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            iconst_0
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int rt2(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 365
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            bipush 10
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int rn(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.Register reg
         0: .line 369
            aload 0 /* reg */
            getfield jdk.vm.ci.code.Register.encoding:I
            iconst_5
            ishl
            ireturn
        end local 0 // jdk.vm.ci.code.Register reg
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private static int maskField(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int sizeInBits
        start local 1 // int n
         0: .line 373
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 0 /* sizeInBits */
            iload 1 /* n */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isSignedNbit:(II)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 374
      StackMap locals:
      StackMap stack:
            iload 1 /* n */
            iload 0 /* sizeInBits */
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            ireturn
        end local 1 // int n
        end local 0 // int sizeInBits
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0  sizeInBits  I
            0    2     1           n  I
    MethodParameters:
            Name  Flags
      sizeInBits  
      n           

  public void <init>(jdk.vm.ci.code.TargetDescription);
    descriptor: (Ljdk/vm/ci/code/TargetDescription;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.TargetDescription target
         0: .line 847
            aload 0 /* this */
            aload 1 /* target */
            invokespecial org.graalvm.compiler.asm.Assembler.<init>:(Ljdk/vm/ci/code/TargetDescription;)V
         1: .line 848
            return
        end local 1 // jdk.vm.ci.code.TargetDescription target
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  target  Ljdk/vm/ci/code/TargetDescription;
    MethodParameters:
        Name  Flags
      target  

  public boolean supports(jdk.vm.ci.aarch64.AArch64$CPUFeature);
    descriptor: (Ljdk/vm/ci/aarch64/AArch64$CPUFeature;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.aarch64.AArch64$CPUFeature feature
         0: .line 851
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.target:Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            checkcast jdk.vm.ci.aarch64.AArch64
            invokevirtual jdk.vm.ci.aarch64.AArch64.getFeatures:()Ljava/util/EnumSet;
            aload 1 /* feature */
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.vm.ci.aarch64.AArch64$CPUFeature feature
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    1     1  feature  Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
    MethodParameters:
         Name  Flags
      feature  

  public boolean isFlagSet(jdk.vm.ci.aarch64.AArch64$Flag);
    descriptor: (Ljdk/vm/ci/aarch64/AArch64$Flag;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.aarch64.AArch64$Flag flag
         0: .line 855
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.target:Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            checkcast jdk.vm.ci.aarch64.AArch64
            invokevirtual jdk.vm.ci.aarch64.AArch64.getFlags:()Ljava/util/EnumSet;
            aload 1 /* flag */
            invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // jdk.vm.ci.aarch64.AArch64$Flag flag
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    1     1  flag  Ljdk/vm/ci/aarch64/AArch64$Flag;
    MethodParameters:
      Name  Flags
      flag  

  protected void b(org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag, int);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        start local 2 // int imm21
         0: .line 867
            aload 0 /* this */
            aload 1 /* condition */
            iload 2 /* imm21 */
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.b:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;II)V
         1: .line 868
            return
        end local 2 // int imm21
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            0    2     2      imm21  I
    MethodParameters:
           Name  Flags
      condition  
      imm21      

  protected void b(org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag, int, int);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        start local 2 // int imm21
        start local 3 // int pos
         0: .line 878
            iload 3 /* pos */
            iconst_m1
            if_icmpne 3
         1: .line 879
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BCOND:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            iload 2 /* imm21 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getConditionalBranchImm:(I)I
            ior
            aload 1 /* condition */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.encoding:I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         2: .line 880
            goto 4
         3: .line 881
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BCOND:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            iload 2 /* imm21 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getConditionalBranchImm:(I)I
            ior
            aload 1 /* condition */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.encoding:I
            ior
            iload 3 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
         4: .line 883
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int pos
        end local 2 // int imm21
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            0    5     2      imm21  I
            0    5     3        pos  I
    MethodParameters:
           Name  Flags
      condition  
      imm21      
      pos        

  protected void cbnz(int, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register reg
        start local 3 // int imm21
         0: .line 893
            aload 0 /* this */
            aload 2 /* reg */
            iload 3 /* imm21 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CBNZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalBranchInstruction:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 894
            return
        end local 3 // int imm21
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   size  I
            0    2     2    reg  Ljdk/vm/ci/code/Register;
            0    2     3  imm21  I
    MethodParameters:
       Name  Flags
      size   
      reg    
      imm21  

  protected void cbnz(int, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register reg
        start local 3 // int imm21
        start local 4 // int pos
         0: .line 905
            aload 0 /* this */
            aload 2 /* reg */
            iload 3 /* imm21 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CBNZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iload 4 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalBranchInstruction:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 906
            return
        end local 4 // int pos
        end local 3 // int imm21
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   size  I
            0    2     2    reg  Ljdk/vm/ci/code/Register;
            0    2     3  imm21  I
            0    2     4    pos  I
    MethodParameters:
       Name  Flags
      size   
      reg    
      imm21  
      pos    

  protected void cbz(int, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register reg
        start local 3 // int imm21
         0: .line 916
            aload 0 /* this */
            aload 2 /* reg */
            iload 3 /* imm21 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CBZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalBranchInstruction:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 917
            return
        end local 3 // int imm21
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   size  I
            0    2     2    reg  Ljdk/vm/ci/code/Register;
            0    2     3  imm21  I
    MethodParameters:
       Name  Flags
      size   
      reg    
      imm21  

  protected void cbz(int, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register reg
        start local 3 // int imm21
        start local 4 // int pos
         0: .line 928
            aload 0 /* this */
            aload 2 /* reg */
            iload 3 /* imm21 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CBZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iload 4 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalBranchInstruction:(Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 929
            return
        end local 4 // int pos
        end local 3 // int imm21
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   size  I
            0    2     2    reg  Ljdk/vm/ci/code/Register;
            0    2     3  imm21  I
            0    2     4    pos  I
    MethodParameters:
       Name  Flags
      size   
      reg    
      imm21  
      pos    

  protected void tbnz(jdk.vm.ci.code.Register, int, int);
    descriptor: (Ljdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
        start local 2 // int uimm6
        start local 3 // int imm16
         0: .line 939
            aload 0 /* this */
            aload 1 /* reg */
            iload 2 /* uimm6 */
            iload 3 /* imm16 */
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.tbnz:(Ljdk/vm/ci/code/Register;III)V
         1: .line 940
            return
        end local 3 // int imm16
        end local 2 // int uimm6
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1    reg  Ljdk/vm/ci/code/Register;
            0    2     2  uimm6  I
            0    2     3  imm16  I
    MethodParameters:
       Name  Flags
      reg    
      uimm6  
      imm16  

  protected void tbz(jdk.vm.ci.code.Register, int, int);
    descriptor: (Ljdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
        start local 2 // int uimm6
        start local 3 // int imm16
         0: .line 950
            aload 0 /* this */
            aload 1 /* reg */
            iload 2 /* uimm6 */
            iload 3 /* imm16 */
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.tbz:(Ljdk/vm/ci/code/Register;III)V
         1: .line 951
            return
        end local 3 // int imm16
        end local 2 // int uimm6
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1    reg  Ljdk/vm/ci/code/Register;
            0    2     2  uimm6  I
            0    2     3  imm16  I
    MethodParameters:
       Name  Flags
      reg    
      uimm6  
      imm16  

  protected void tbnz(jdk.vm.ci.code.Register, int, int, int);
    descriptor: (Ljdk/vm/ci/code/Register;III)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=10, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
        start local 2 // int uimm6
        start local 3 // int imm16
        start local 4 // int pos
         0: .line 962
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* reg */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 963
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            bipush 6
            iload 2 /* uimm6 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 964
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            bipush 16
            iload 3 /* imm16 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isSignedNbit:(II)Z
            ifne 3
            new java.lang.AssertionError
            dup
            ldc "Offset value must fit in 16 bits signed: 0x%x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* imm16 */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 965
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            iload 3 /* imm16 */
            iconst_3
            iand
            ifeq 4
            new java.lang.AssertionError
            dup
            ldc "Lower two bits must be zero: 0x%x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* imm16 */
            iconst_3
            iand
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 967
      StackMap locals:
      StackMap stack:
            iload 2 /* uimm6 */
            iconst_5
            ishr
            iconst_1
            iand
            ifne 5
            bipush 32
            goto 6
      StackMap locals:
      StackMap stack:
         5: bipush 64
      StackMap locals:
      StackMap stack: int
         6: istore 5 /* size */
        start local 5 // int size
         7: .line 969
            iload 2 /* uimm6 */
            bipush 31
            iand
            istore 6 /* uimm5 */
        start local 6 // int uimm5
         8: .line 970
            iload 3 /* imm16 */
            bipush 16
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            iconst_2
            ishr
            istore 7 /* imm14 */
        start local 7 // int imm14
         9: .line 971
            iload 5 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 8 /* type */
        start local 8 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        10: .line 972
            aload 8 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.TBNZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 6 /* uimm5 */
            bipush 19
            ishl
            ior
            iload 7 /* imm14 */
            iconst_5
            ishl
            ior
            aload 1 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            istore 9 /* encoding */
        start local 9 // int encoding
        11: .line 973
            iload 4 /* pos */
            iconst_m1
            if_icmpne 14
        12: .line 974
            aload 0 /* this */
            iload 9 /* encoding */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        13: .line 975
            goto 15
        14: .line 976
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler jdk.vm.ci.code.Register int int int int int int org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType int
      StackMap stack:
            aload 0 /* this */
            iload 9 /* encoding */
            iload 4 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
        15: .line 978
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int encoding
        end local 8 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 7 // int imm14
        end local 6 // int uimm5
        end local 5 // int size
        end local 4 // int pos
        end local 3 // int imm16
        end local 2 // int uimm6
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   16     1       reg  Ljdk/vm/ci/code/Register;
            0   16     2     uimm6  I
            0   16     3     imm16  I
            0   16     4       pos  I
            7   16     5      size  I
            8   16     6     uimm5  I
            9   16     7     imm14  I
           10   16     8      type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
           11   16     9  encoding  I
    MethodParameters:
       Name  Flags
      reg    
      uimm6  
      imm16  
      pos    

  protected void tbz(jdk.vm.ci.code.Register, int, int, int);
    descriptor: (Ljdk/vm/ci/code/Register;III)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=10, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
        start local 2 // int uimm6
        start local 3 // int imm16
        start local 4 // int pos
         0: .line 989
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* reg */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 990
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            bipush 6
            iload 2 /* uimm6 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 991
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            bipush 16
            iload 3 /* imm16 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isSignedNbit:(II)Z
            ifne 3
            new java.lang.AssertionError
            dup
            ldc "Offset value must fit in 16 bits signed: 0x%x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* imm16 */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 992
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            iload 3 /* imm16 */
            iconst_3
            iand
            ifeq 4
            new java.lang.AssertionError
            dup
            ldc "Lower two bits must be zero: 0x%x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* imm16 */
            iconst_3
            iand
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 994
      StackMap locals:
      StackMap stack:
            iload 2 /* uimm6 */
            iconst_5
            ishr
            iconst_1
            iand
            ifne 5
            bipush 32
            goto 6
      StackMap locals:
      StackMap stack:
         5: bipush 64
      StackMap locals:
      StackMap stack: int
         6: istore 5 /* size */
        start local 5 // int size
         7: .line 996
            iload 2 /* uimm6 */
            bipush 31
            iand
            istore 6 /* uimm5 */
        start local 6 // int uimm5
         8: .line 997
            iload 3 /* imm16 */
            bipush 16
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            iconst_2
            ishr
            istore 7 /* imm14 */
        start local 7 // int imm14
         9: .line 998
            iload 5 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 8 /* type */
        start local 8 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        10: .line 999
            aload 8 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.TBZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 6 /* uimm5 */
            bipush 19
            ishl
            ior
            iload 7 /* imm14 */
            iconst_5
            ishl
            ior
            aload 1 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            istore 9 /* encoding */
        start local 9 // int encoding
        11: .line 1000
            iload 4 /* pos */
            iconst_m1
            if_icmpne 14
        12: .line 1001
            aload 0 /* this */
            iload 9 /* encoding */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        13: .line 1002
            goto 15
        14: .line 1003
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler jdk.vm.ci.code.Register int int int int int int org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType int
      StackMap stack:
            aload 0 /* this */
            iload 9 /* encoding */
            iload 4 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
        15: .line 1005
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int encoding
        end local 8 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 7 // int imm14
        end local 6 // int uimm5
        end local 5 // int size
        end local 4 // int pos
        end local 3 // int imm16
        end local 2 // int uimm6
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   16     0      this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   16     1       reg  Ljdk/vm/ci/code/Register;
            0   16     2     uimm6  I
            0   16     3     imm16  I
            0   16     4       pos  I
            7   16     5      size  I
            8   16     6     uimm5  I
            9   16     7     imm14  I
           10   16     8      type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
           11   16     9  encoding  I
    MethodParameters:
       Name  Flags
      reg    
      uimm6  
      imm16  
      pos    

  private void conditionalBranchInstruction(jdk.vm.ci.code.Register, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType, org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, int);
    descriptor: (Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
        start local 2 // int imm21
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 5 // int pos
         0: .line 1008
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* reg */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1009
      StackMap locals:
      StackMap stack:
            aload 4 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc 872415232
            ior
            istore 6 /* instrEncoding */
        start local 6 // int instrEncoding
         2: .line 1010
            iload 5 /* pos */
            iconst_m1
            if_icmpne 5
         3: .line 1011
            aload 0 /* this */
            aload 3 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            iload 6 /* instrEncoding */
            ior
            iload 2 /* imm21 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getConditionalBranchImm:(I)I
            ior
            aload 1 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 1012
            goto 6
         5: .line 1013
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            iload 6 /* instrEncoding */
            ior
            iload 2 /* imm21 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getConditionalBranchImm:(I)I
            ior
            aload 1 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 5 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
         6: .line 1015
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int instrEncoding
        end local 5 // int pos
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 2 // int imm21
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    7     1            reg  Ljdk/vm/ci/code/Register;
            0    7     2          imm21  I
            0    7     3           type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            0    7     4          instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    7     5            pos  I
            2    7     6  instrEncoding  I
    MethodParameters:
       Name  Flags
      reg    
      imm21  
      type   
      instr  
      pos    

  private static int getConditionalBranchImm(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // int imm21
         0: .line 1018
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            bipush 21
            iload 0 /* imm21 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isSignedNbit:(II)Z
            ifeq 1
            iload 0 /* imm21 */
            iconst_3
            iand
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            ldc "Immediate has to be 21bit signed number and word aligned"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1019
      StackMap locals:
      StackMap stack:
            iload 0 /* imm21 */
            bipush 21
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            iconst_2
            ishr
            istore 1 /* imm */
        start local 1 // int imm
         3: .line 1020
            iload 1 /* imm */
            iconst_5
            ishl
            ireturn
        end local 1 // int imm
        end local 0 // int imm21
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0  imm21  I
            3    4     1    imm  I
    MethodParameters:
       Name  Flags
      imm21  

  protected void b(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int imm28
         0: .line 1029
            aload 0 /* this */
            iload 1 /* imm28 */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.B:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.unconditionalBranchImmInstruction:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 1030
            return
        end local 1 // int imm28
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  imm28  I
    MethodParameters:
       Name  Flags
      imm28  

  protected void b(int, int);
    descriptor: (II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int imm28
        start local 2 // int pos
         0: .line 1038
            aload 0 /* this */
            iload 1 /* imm28 */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.B:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iload 2 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.unconditionalBranchImmInstruction:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 1039
            return
        end local 2 // int pos
        end local 1 // int imm28
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  imm28  I
            0    2     2    pos  I
    MethodParameters:
       Name  Flags
      imm28  
      pos    

  public void bl(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int imm28
         0: .line 1047
            aload 0 /* this */
            iload 1 /* imm28 */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BL:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iconst_m1
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.unconditionalBranchImmInstruction:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 1048
            return
        end local 1 // int imm28
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  imm28  I
    MethodParameters:
       Name  Flags
      imm28  

  private void unconditionalBranchImmInstruction(int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, int);
    descriptor: (ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int imm28
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 3 // int pos
         0: .line 1051
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            bipush 28
            iload 1 /* imm28 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isSignedNbit:(II)Z
            ifeq 1
            iload 1 /* imm28 */
            iconst_3
            iand
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            ldc "Immediate has to be 28bit signed number and word aligned"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1052
      StackMap locals:
      StackMap stack:
            iload 1 /* imm28 */
            bipush 28
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            iconst_2
            ishr
            istore 4 /* imm */
        start local 4 // int imm
         3: .line 1053
            aload 2 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc 335544320
            ior
            istore 5 /* instrEncoding */
        start local 5 // int instrEncoding
         4: .line 1054
            iload 3 /* pos */
            iconst_m1
            if_icmpne 8
         5: .line 1055
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.position:()I
            aload 2 /* instr */
            bipush 26
            iconst_0
            iconst_2
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
         6: .line 1056
            aload 0 /* this */
            iload 5 /* instrEncoding */
            iload 4 /* imm */
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         7: .line 1057
            goto 10
         8: .line 1058
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* pos */
            aload 2 /* instr */
            bipush 26
            iconst_0
            iconst_2
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
         9: .line 1059
            aload 0 /* this */
            iload 5 /* instrEncoding */
            iload 4 /* imm */
            ior
            iload 3 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
        10: .line 1061
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int instrEncoding
        end local 4 // int imm
        end local 3 // int pos
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 1 // int imm28
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1          imm28  I
            0   11     2          instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   11     3            pos  I
            3   11     4            imm  I
            4   11     5  instrEncoding  I
    MethodParameters:
       Name  Flags
      imm28  
      instr  
      pos    

  public void blr(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
         0: .line 1071
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BLR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 1 /* reg */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.unconditionalBranchRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;)V
         1: .line 1072
            return
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  protected void br(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
         0: .line 1080
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 1 /* reg */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.unconditionalBranchRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;)V
         1: .line 1081
            return
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  public void ret(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register reg
         0: .line 1089
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.RET:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 1 /* reg */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.unconditionalBranchRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;)V
         1: .line 1090
            return
        end local 1 // jdk.vm.ci.code.Register reg
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      reg   

  private void unconditionalBranchRegInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register reg
         0: .line 1093
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* reg */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1094
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* reg */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1095
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 2 /* reg */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1096
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc -704643072
            ior
            aload 2 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 1098
            return
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    5     2    reg  Ljdk/vm/ci/code/Register;
    MethodParameters:
       Name  Flags
      instr  
      reg    

  public void ldr(int, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int srcSize
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 1110
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1111
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 1 /* srcSize */
            bipush 8
            if_icmpeq 2
            iload 1 /* srcSize */
            bipush 16
            if_icmpeq 2
            iload 1 /* srcSize */
            bipush 32
            if_icmpeq 2
            iload 1 /* srcSize */
            bipush 64
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1112
      StackMap locals:
      StackMap stack:
            iload 1 /* srcSize */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         3: .line 1113
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* address */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General32:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
         4: .line 1114
            return
        end local 4 // int transferSize
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int srcSize
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1       srcSize  I
            0    5     2            rt  Ljdk/vm/ci/code/Register;
            0    5     3       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            3    5     4  transferSize  I
    MethodParameters:
         Name  Flags
      srcSize  
      rt       
      address  

  protected void ldrs(int, int, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (IILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int targetSize
        start local 2 // int srcSize
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 1126
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1127
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            iload 2 /* srcSize */
            bipush 8
            if_icmpeq 2
            iload 2 /* srcSize */
            bipush 16
            if_icmpeq 2
            iload 2 /* srcSize */
            bipush 32
            if_icmpne 3
      StackMap locals:
      StackMap stack:
         2: iload 2 /* srcSize */
            iload 1 /* targetSize */
            if_icmpne 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1128
      StackMap locals:
      StackMap stack:
            iload 2 /* srcSize */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 5 /* transferSize */
        start local 5 // int transferSize
         5: .line 1129
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDRS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 3 /* rt */
            aload 4 /* address */
            iload 1 /* targetSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 5 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
         6: .line 1130
            return
        end local 5 // int transferSize
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // int srcSize
        end local 1 // int targetSize
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    7     1    targetSize  I
            0    7     2       srcSize  I
            0    7     3            rt  Ljdk/vm/ci/code/Register;
            0    7     4       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            5    7     5  transferSize  I
    MethodParameters:
            Name  Flags
      targetSize  
      srcSize     
      rt          
      address     

  public void prfm(org.graalvm.compiler.asm.aarch64.AArch64Address, org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$PrefetchMode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode mode
         0: .line 1208
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_SCALED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            if_acmpeq 3
         1: .line 1209
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_UNSCALED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            if_acmpeq 3
         2: .line 1210
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.REGISTER_OFFSET:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1211
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 2 /* mode */
            ifnonnull 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1213
      StackMap locals:
      StackMap stack:
            bipush 8
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 3 /* transferSize */
        start local 3 // int transferSize
         5: .line 1214
            aload 2 /* mode */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode.toRegister:()Ljdk/vm/ci/code/Register;
            astore 4 /* rt */
        start local 4 // jdk.vm.ci.code.Register rt
         6: .line 1223
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDRS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 4 /* rt */
            aload 1 /* address */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 3 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
         7: .line 1224
            return
        end local 4 // jdk.vm.ci.code.Register rt
        end local 3 // int transferSize
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode mode
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    8     1       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            0    8     2          mode  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$PrefetchMode;
            5    8     3  transferSize  I
            6    8     4            rt  Ljdk/vm/ci/code/Register;
    MethodParameters:
         Name  Flags
      address  
      mode     

  public void str(int, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int destSize
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 1234
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1235
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 1 /* destSize */
            bipush 8
            if_icmpeq 2
            iload 1 /* destSize */
            bipush 16
            if_icmpeq 2
            iload 1 /* destSize */
            bipush 32
            if_icmpeq 2
            iload 1 /* destSize */
            bipush 64
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1236
      StackMap locals:
      StackMap stack:
            iload 1 /* destSize */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         3: .line 1237
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.STR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* address */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
         4: .line 1238
            return
        end local 4 // int transferSize
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int destSize
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1      destSize  I
            0    5     2            rt  Ljdk/vm/ci/code/Register;
            0    5     3       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            3    5     4  transferSize  I
    MethodParameters:
          Name  Flags
      destSize  
      rt        
      address   

  private void loadStoreInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType, int);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=12, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register reg
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        start local 5 // int log2TransferSize
         0: .line 1241
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 5 /* log2TransferSize */
            iflt 1
            iload 5 /* log2TransferSize */
            iconst_4
            if_icmplt 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1242
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 6 /* transferSizeEncoding */
        start local 6 // int transferSizeEncoding
         3: .line 1243
            aload 4 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.width:I
            bipush 32
            if_icmpne 4
            ldc 4194304
            goto 5
      StackMap locals: int
      StackMap stack:
         4: iconst_0
      StackMap locals:
      StackMap stack: int
         5: istore 7 /* is32Bit */
        start local 7 // int is32Bit
         6: .line 1244
            aload 4 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.isGeneral:Z
            ifne 7
            ldc 67108864
            goto 8
      StackMap locals: int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 8 /* isFloat */
        start local 8 // int isFloat
         9: .line 1245
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            iload 6 /* transferSizeEncoding */
            ior
            iload 7 /* is32Bit */
            ior
            iload 8 /* isFloat */
            ior
            aload 2 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            istore 9 /* memop */
        start local 9 // int memop
        10: .line 1246
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode:()[I
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iaload
            tableswitch { // 1 - 8
                    1: 11
                    2: 14
                    3: 17
                    4: 19
                    5: 19
                    6: 29
                    7: 34
                    8: 37
              default: 40
          }
        11: .line 1248
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.position:()I
            aload 1 /* instr */
            bipush 12
            bipush 10
            iload 5 /* log2TransferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
        12: .line 1249
            aload 0 /* this */
            iload 9 /* memop */
            ldc 956301312
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediate:()I
            bipush 10
            ishl
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        13: .line 1250
            goto 41
        14: .line 1252
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.position:()I
            aload 1 /* instr */
            bipush 9
            bipush 12
            iconst_0
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
        15: .line 1253
            aload 0 /* this */
            iload 9 /* memop */
            ldc 939524096
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediate:()I
            bipush 12
            ishl
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        16: .line 1254
            goto 41
        17: .line 1256
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 9 /* memop */
            ldc 956301312
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        18: .line 1257
            goto 41
        19: .line 1260
      StackMap locals:
      StackMap stack:
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.EXTENDED_REGISTER_OFFSET:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            if_acmpne 20
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getExtendType:()Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
            goto 21
      StackMap locals:
      StackMap stack:
        20: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType.UXTX:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType
        21: astore 10 /* extendType */
        start local 10 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        22: .line 1261
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.isScaled:()Z
            ifeq 23
            iload 5 /* log2TransferSize */
            ifeq 23
            iconst_1
            goto 24
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType
      StackMap stack:
        23: iconst_0
      StackMap locals:
      StackMap stack: int
        24: istore 11 /* shouldScale */
        start local 11 // boolean shouldScale
        25: .line 1262
            aload 0 /* this */
            iload 9 /* memop */
            ldc 941623296
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getOffset:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 10 /* extendType */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType.encoding:I
            bipush 13
            ishl
            ior
            iload 11 /* shouldScale */
            ifeq 26
            iconst_1
            goto 27
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register org.graalvm.compiler.asm.aarch64.AArch64Address org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType int int int int int org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
        26: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register org.graalvm.compiler.asm.aarch64.AArch64Address org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType int int int int int org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
        27: bipush 12
            ishl
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        28: .line 1263
            goto 41
        end local 11 // boolean shouldScale
        end local 10 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        29: .line 1265
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 30
            iload 5 /* log2TransferSize */
            iconst_2
            if_icmpge 30
            new java.lang.AssertionError
            dup
            ldc "PC literal loads only works for load/stores of 32-bit and larger"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        30: .line 1266
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            iconst_2
            isub
            bipush 30
            ishl
            istore 6 /* transferSizeEncoding */
        31: .line 1267
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.position:()I
            aload 1 /* instr */
            bipush 21
            iconst_5
            iconst_2
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
        32: .line 1268
            aload 0 /* this */
            iload 6 /* transferSizeEncoding */
            iload 8 /* isFloat */
            ior
            ldc 402653184
            ior
            aload 2 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediate:()I
            iconst_5
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        33: .line 1269
            goto 41
        34: .line 1271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.position:()I
            aload 1 /* instr */
            bipush 9
            bipush 12
            iconst_0
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
        35: .line 1272
            aload 0 /* this */
            iload 9 /* memop */
            ldc 939525120
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediate:()I
            bipush 12
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        36: .line 1273
            goto 41
        37: .line 1275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.position:()I
            aload 1 /* instr */
            bipush 9
            bipush 12
            iconst_0
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.annotatePatchingImmediate:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
        38: .line 1276
            aload 0 /* this */
            iload 9 /* memop */
            ldc 939527168
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediate:()I
            bipush 12
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        39: .line 1277
            goto 41
        40: .line 1279
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Unhandled addressing mode: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            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
        41: .line 1281
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int memop
        end local 8 // int isFloat
        end local 7 // int is32Bit
        end local 6 // int transferSizeEncoding
        end local 5 // int log2TransferSize
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   42     0                  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   42     1                 instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   42     2                   reg  Ljdk/vm/ci/code/Register;
            0   42     3               address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            0   42     4                  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            0   42     5      log2TransferSize  I
            3   42     6  transferSizeEncoding  I
            6   42     7               is32Bit  I
            9   42     8               isFloat  I
           10   42     9                 memop  I
           22   29    10            extendType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
           25   29    11           shouldScale  Z
    MethodParameters:
                  Name  Flags
      instr             
      reg               
      address           
      type              
      log2TransferSize  

  public void ldp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rt2
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 1289
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1290
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* rt2 */
            aload 4 /* address */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStorePairInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         2: .line 1291
            return
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 3 // jdk.vm.ci.code.Register rt2
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    3     1     size  I
            0    3     2       rt  Ljdk/vm/ci/code/Register;
            0    3     3      rt2  Ljdk/vm/ci/code/Register;
            0    3     4  address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
    MethodParameters:
         Name  Flags
      size     
      rt       
      rt2      
      address  

  public void stp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rt2
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 1299
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.STP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* rt2 */
            aload 4 /* address */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStorePairInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         2: .line 1301
            return
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 3 // jdk.vm.ci.code.Register rt2
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    3     1     size  I
            0    3     2       rt  Ljdk/vm/ci/code/Register;
            0    3     3      rt2  Ljdk/vm/ci/code/Register;
            0    3     4  address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
    MethodParameters:
         Name  Flags
      size     
      rt       
      rt2      
      address  

  private void loadStorePairInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rt2
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1304
            bipush 7
            aload 4 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediateRaw:()I
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.maskField:(II)I
            istore 6 /* scaledOffset */
        start local 6 // int scaledOffset
         1: .line 1306
            aload 5 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 6 /* scaledOffset */
            bipush 15
            ishl
            ior
            aload 3 /* rt2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getBase:()Ljdk/vm/ci/code/Register;
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rn:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 2 /* rt */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            istore 7 /* memop */
        start local 7 // int memop
         2: .line 1307
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode:()[I
            aload 4 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iaload
            lookupswitch { // 3
                    1: 3
                    7: 5
                    8: 7
              default: 9
          }
         3: .line 1309
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 7 /* memop */
            ldc 671088640
            ior
            ldc 16777216
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 1310
            goto 10
         5: .line 1312
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 7 /* memop */
            ldc 671088640
            ior
            ldc 8388608
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         6: .line 1313
            goto 10
         7: .line 1315
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 7 /* memop */
            ldc 671088640
            ior
            ldc 25165824
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         8: .line 1316
            goto 10
         9: .line 1318
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Unhandled addressing mode: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getAddressingMode:()Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            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
        10: .line 1320
      StackMap locals:
      StackMap stack:
            return
        end local 7 // int memop
        end local 6 // int scaledOffset
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 3 // jdk.vm.ci.code.Register rt2
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   11     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1         instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   11     2            rt  Ljdk/vm/ci/code/Register;
            0   11     3           rt2  Ljdk/vm/ci/code/Register;
            0   11     4       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            0   11     5          type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            1   11     6  scaledOffset  I
            2   11     7         memop  I
    MethodParameters:
         Name  Flags
      instr    
      rt       
      rt2      
      address  
      type     

  protected void ldxr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rn
         0: .line 1332
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1333
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         2: .line 1334
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDXR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* rn */
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exclusiveLoadInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
         3: .line 1335
            return
        end local 4 // int transferSize
        end local 3 // jdk.vm.ci.code.Register rn
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rt  Ljdk/vm/ci/code/Register;
            0    4     3            rn  Ljdk/vm/ci/code/Register;
            2    4     4  transferSize  I
    MethodParameters:
      Name  Flags
      size  
      rt    
      rn    

  protected void stxr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
         0: .line 1348
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1349
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 5 /* transferSize */
        start local 5 // int transferSize
         2: .line 1350
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.STXR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rs */
            aload 3 /* rt */
            aload 4 /* rn */
            iload 5 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exclusiveStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
         3: .line 1351
            return
        end local 5 // int transferSize
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rs  Ljdk/vm/ci/code/Register;
            0    4     3            rt  Ljdk/vm/ci/code/Register;
            0    4     4            rn  Ljdk/vm/ci/code/Register;
            2    4     5  transferSize  I
    MethodParameters:
      Name  Flags
      size  
      rs    
      rt    
      rn    

  protected void ldar(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rn
         0: .line 1364
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1365
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         2: .line 1366
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDAR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* rn */
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exclusiveLoadInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
         3: .line 1367
            return
        end local 4 // int transferSize
        end local 3 // jdk.vm.ci.code.Register rn
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rt  Ljdk/vm/ci/code/Register;
            0    4     3            rn  Ljdk/vm/ci/code/Register;
            2    4     4  transferSize  I
    MethodParameters:
      Name  Flags
      size  
      rt    
      rn    

  protected void stlr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rn
         0: .line 1377
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1378
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         2: .line 1380
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.STLR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getstatic jdk.vm.ci.aarch64.AArch64.r0:Ljdk/vm/ci/code/Register;
            aload 2 /* rt */
            aload 3 /* rn */
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exclusiveStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
         3: .line 1381
            return
        end local 4 // int transferSize
        end local 3 // jdk.vm.ci.code.Register rn
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rt  Ljdk/vm/ci/code/Register;
            0    4     3            rn  Ljdk/vm/ci/code/Register;
            2    4     4  transferSize  I
    MethodParameters:
      Name  Flags
      size  
      rt    
      rn    

  public void ldaxr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // jdk.vm.ci.code.Register rn
         0: .line 1392
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1393
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         2: .line 1394
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDAXR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* rn */
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exclusiveLoadInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
         3: .line 1395
            return
        end local 4 // int transferSize
        end local 3 // jdk.vm.ci.code.Register rn
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rt  Ljdk/vm/ci/code/Register;
            0    4     3            rn  Ljdk/vm/ci/code/Register;
            2    4     4  transferSize  I
    MethodParameters:
      Name  Flags
      size  
      rt    
      rn    

  public void stlxr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
         0: .line 1408
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1409
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 5 /* transferSize */
        start local 5 // int transferSize
         2: .line 1410
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.STLXR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rs */
            aload 3 /* rt */
            aload 4 /* rn */
            iload 5 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exclusiveStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
         3: .line 1411
            return
        end local 5 // int transferSize
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rs  Ljdk/vm/ci/code/Register;
            0    4     3            rt  Ljdk/vm/ci/code/Register;
            0    4     4            rn  Ljdk/vm/ci/code/Register;
            2    4     5  transferSize  I
    MethodParameters:
      Name  Flags
      size  
      rs    
      rt    
      rn    

  private void exclusiveLoadInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register reg
        start local 3 // jdk.vm.ci.code.Register rn
        start local 4 // int log2TransferSize
         0: .line 1414
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 4 /* log2TransferSize */
            iflt 1
            iload 4 /* log2TransferSize */
            iconst_4
            if_icmplt 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1415
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 2 /* reg */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1416
      StackMap locals:
      StackMap stack:
            iload 4 /* log2TransferSize */
            bipush 30
            ishl
            istore 5 /* transferSizeEncoding */
        start local 5 // int transferSizeEncoding
         4: .line 1417
            aload 0 /* this */
            iload 5 /* transferSizeEncoding */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 4194304
            ior
            aload 3 /* rn */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rn:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 2 /* reg */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 1418
            return
        end local 5 // int transferSizeEncoding
        end local 4 // int log2TransferSize
        end local 3 // jdk.vm.ci.code.Register rn
        end local 2 // jdk.vm.ci.code.Register reg
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1                 instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    6     2                   reg  Ljdk/vm/ci/code/Register;
            0    6     3                    rn  Ljdk/vm/ci/code/Register;
            0    6     4      log2TransferSize  I
            4    6     5  transferSizeEncoding  I
    MethodParameters:
                  Name  Flags
      instr             
      reg               
      rn                
      log2TransferSize  

  private void exclusiveStoreInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // int log2TransferSize
         0: .line 1431
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 5 /* log2TransferSize */
            iflt 1
            iload 5 /* log2TransferSize */
            iconst_4
            if_icmplt 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1432
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1433
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 6 /* transferSizeEncoding */
        start local 6 // int transferSizeEncoding
         5: .line 1434
            aload 0 /* this */
            iload 6 /* transferSizeEncoding */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* rs */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* rn */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rn:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* rt */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         6: .line 1435
            return
        end local 6 // int transferSizeEncoding
        end local 5 // int log2TransferSize
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    7     0                  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    7     1                 instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    7     2                    rs  Ljdk/vm/ci/code/Register;
            0    7     3                    rt  Ljdk/vm/ci/code/Register;
            0    7     4                    rn  Ljdk/vm/ci/code/Register;
            0    7     5      log2TransferSize  I
            5    7     6  transferSizeEncoding  I
    MethodParameters:
                  Name  Flags
      instr             
      rs                
      rt                
      rn                
      log2TransferSize  

  public void cas(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, boolean, boolean);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // boolean acquire
        start local 6 // boolean release
         0: .line 1450
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1451
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 7 /* transferSize */
        start local 7 // int transferSize
         2: .line 1452
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CAS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rs */
            aload 3 /* rt */
            aload 4 /* rn */
            iload 7 /* transferSize */
            iload 5 /* acquire */
            iload 6 /* release */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.compareAndSwapInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZZ)V
         3: .line 1453
            return
        end local 7 // int transferSize
        end local 6 // boolean release
        end local 5 // boolean acquire
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rs  Ljdk/vm/ci/code/Register;
            0    4     3            rt  Ljdk/vm/ci/code/Register;
            0    4     4            rn  Ljdk/vm/ci/code/Register;
            0    4     5       acquire  Z
            0    4     6       release  Z
            2    4     7  transferSize  I
    MethodParameters:
         Name  Flags
      size     
      rs       
      rt       
      rn       
      acquire  
      release  

  private void compareAndSwapInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, boolean, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // int log2TransferSize
        start local 6 // boolean acquire
        start local 7 // boolean release
         0: .line 1456
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 5 /* log2TransferSize */
            iflt 1
            iload 5 /* log2TransferSize */
            iconst_4
            if_icmplt 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1457
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1458
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 8 /* transferSizeEncoding */
        start local 8 // int transferSizeEncoding
         5: .line 1459
            aload 0 /* this */
            iload 8 /* transferSizeEncoding */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* rs */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* rn */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rn:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* rt */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 6 /* acquire */
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
         6: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
         7: bipush 22
            ishl
            ior
            iload 7 /* release */
            ifeq 8
            iconst_1
            goto 9
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
         8: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
         9: bipush 15
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        10: .line 1460
            return
        end local 8 // int transferSizeEncoding
        end local 7 // boolean release
        end local 6 // boolean acquire
        end local 5 // int log2TransferSize
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1                 instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   11     2                    rs  Ljdk/vm/ci/code/Register;
            0   11     3                    rt  Ljdk/vm/ci/code/Register;
            0   11     4                    rn  Ljdk/vm/ci/code/Register;
            0   11     5      log2TransferSize  I
            0   11     6               acquire  Z
            0   11     7               release  Z
            5   11     8  transferSizeEncoding  I
    MethodParameters:
                  Name  Flags
      instr             
      rs                
      rt                
      rn                
      log2TransferSize  
      acquire           
      release           

  public void ldadd(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, boolean, boolean);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // boolean acquire
        start local 6 // boolean release
         0: .line 1475
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1476
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 7 /* transferSize */
        start local 7 // int transferSize
         2: .line 1477
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rs */
            aload 3 /* rt */
            aload 4 /* rn */
            iload 7 /* transferSize */
            iload 5 /* acquire */
            iload 6 /* release */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadAndAddInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZZ)V
         3: .line 1478
            return
        end local 7 // int transferSize
        end local 6 // boolean release
        end local 5 // boolean acquire
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rs  Ljdk/vm/ci/code/Register;
            0    4     3            rt  Ljdk/vm/ci/code/Register;
            0    4     4            rn  Ljdk/vm/ci/code/Register;
            0    4     5       acquire  Z
            0    4     6       release  Z
            2    4     7  transferSize  I
    MethodParameters:
         Name  Flags
      size     
      rs       
      rt       
      rn       
      acquire  
      release  

  private void loadAndAddInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, boolean, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // int log2TransferSize
        start local 6 // boolean acquire
        start local 7 // boolean release
         0: .line 1481
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 5 /* log2TransferSize */
            iflt 1
            iload 5 /* log2TransferSize */
            iconst_4
            if_icmplt 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1482
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1483
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 8 /* transferSizeEncoding */
        start local 8 // int transferSizeEncoding
         5: .line 1484
            aload 0 /* this */
            iload 8 /* transferSizeEncoding */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* rs */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* rn */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rn:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* rt */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 6 /* acquire */
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
         6: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
         7: bipush 23
            ishl
            ior
            iload 7 /* release */
            ifeq 8
            iconst_1
            goto 9
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
         8: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
         9: bipush 22
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        10: .line 1485
            return
        end local 8 // int transferSizeEncoding
        end local 7 // boolean release
        end local 6 // boolean acquire
        end local 5 // int log2TransferSize
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1                 instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   11     2                    rs  Ljdk/vm/ci/code/Register;
            0   11     3                    rt  Ljdk/vm/ci/code/Register;
            0   11     4                    rn  Ljdk/vm/ci/code/Register;
            0   11     5      log2TransferSize  I
            0   11     6               acquire  Z
            0   11     7               release  Z
            5   11     8  transferSizeEncoding  I
    MethodParameters:
                  Name  Flags
      instr             
      rs                
      rt                
      rn                
      log2TransferSize  
      acquire           
      release           

  public void swp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, boolean, boolean);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=8, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // boolean acquire
        start local 6 // boolean release
         0: .line 1499
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 1 /* size */
            bipush 8
            if_icmpeq 1
            iload 1 /* size */
            bipush 16
            if_icmpeq 1
            iload 1 /* size */
            bipush 32
            if_icmpeq 1
            iload 1 /* size */
            bipush 64
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1500
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 7 /* transferSize */
        start local 7 // int transferSize
         2: .line 1501
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SWP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rs */
            aload 3 /* rt */
            aload 4 /* rn */
            iload 7 /* transferSize */
            iload 5 /* acquire */
            iload 6 /* release */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.swapInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZZ)V
         3: .line 1502
            return
        end local 7 // int transferSize
        end local 6 // boolean release
        end local 5 // boolean acquire
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1          size  I
            0    4     2            rs  Ljdk/vm/ci/code/Register;
            0    4     3            rt  Ljdk/vm/ci/code/Register;
            0    4     4            rn  Ljdk/vm/ci/code/Register;
            0    4     5       acquire  Z
            0    4     6       release  Z
            2    4     7  transferSize  I
    MethodParameters:
         Name  Flags
      size     
      rs       
      rt       
      rn       
      acquire  
      release  

  private void swapInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, boolean, boolean);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register rs
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rn
        start local 5 // int log2TransferSize
        start local 6 // boolean acquire
        start local 7 // boolean release
         0: .line 1505
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 5 /* log2TransferSize */
            iflt 1
            iload 5 /* log2TransferSize */
            iconst_4
            if_icmplt 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1506
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifeq 3
            aload 2 /* rs */
            aload 3 /* rt */
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1507
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 8 /* transferSizeEncoding */
        start local 8 // int transferSizeEncoding
         5: .line 1508
            aload 0 /* this */
            iload 8 /* transferSizeEncoding */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* rs */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* rn */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rn:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* rt */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 6 /* acquire */
            ifeq 6
            iconst_1
            goto 7
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
         6: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
         7: bipush 23
            ishl
            ior
            iload 7 /* release */
            ifeq 8
            iconst_1
            goto 9
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int
         8: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction jdk.vm.ci.code.Register jdk.vm.ci.code.Register jdk.vm.ci.code.Register int int int int
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler int int
         9: bipush 22
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        10: .line 1509
            return
        end local 8 // int transferSizeEncoding
        end local 7 // boolean release
        end local 6 // boolean acquire
        end local 5 // int log2TransferSize
        end local 4 // jdk.vm.ci.code.Register rn
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // jdk.vm.ci.code.Register rs
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   11     0                  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1                 instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   11     2                    rs  Ljdk/vm/ci/code/Register;
            0   11     3                    rt  Ljdk/vm/ci/code/Register;
            0   11     4                    rn  Ljdk/vm/ci/code/Register;
            0   11     5      log2TransferSize  I
            0   11     6               acquire  Z
            0   11     7               release  Z
            5   11     8  transferSizeEncoding  I
    MethodParameters:
                  Name  Flags
      instr             
      rs                
      rt                
      rn                
      log2TransferSize  
      acquire           
      release           

  public void adrp(jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
         0: .line 1521
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADRP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc 268435456
            ior
            aload 1 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 1522
            return
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   dst  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      dst   

  public void adr(jdk.vm.ci.code.Register, int);
    descriptor: (Ljdk/vm/ci/code/Register;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // int imm21
         0: .line 1531
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc 268435456
            ior
            aload 1 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 2 /* imm21 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getPcRelativeImmEncoding:(I)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 1532
            return
        end local 2 // int imm21
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1    dst  Ljdk/vm/ci/code/Register;
            0    2     2  imm21  I
    MethodParameters:
       Name  Flags
      dst    
      imm21  

  public void adr(jdk.vm.ci.code.Register, int, int);
    descriptor: (Ljdk/vm/ci/code/Register;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // int imm21
        start local 3 // int pos
         0: .line 1542
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc 268435456
            ior
            aload 1 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 2 /* imm21 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getPcRelativeImmEncoding:(I)I
            ior
            iload 3 /* pos */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
         1: .line 1543
            return
        end local 3 // int pos
        end local 2 // int imm21
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1    dst  Ljdk/vm/ci/code/Register;
            0    2     2  imm21  I
            0    2     3    pos  I
    MethodParameters:
       Name  Flags
      dst    
      imm21  
      pos    

  private static int getPcRelativeImmEncoding(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // int imm21
         0: .line 1546
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            bipush 21
            iload 0 /* imm21 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isSignedNbit:(II)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1547
      StackMap locals:
      StackMap stack:
            iload 0 /* imm21 */
            bipush 21
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            istore 1 /* imm */
        start local 1 // int imm
         2: .line 1549
            iload 1 /* imm */
            iconst_2
            ishr
            iconst_5
            ishl
            istore 2 /* immHi */
        start local 2 // int immHi
         3: .line 1551
            iload 1 /* imm */
            iconst_3
            iand
            bipush 29
            ishl
            istore 3 /* immLo */
        start local 3 // int immLo
         4: .line 1552
            iload 2 /* immHi */
            iload 3 /* immLo */
            ior
            ireturn
        end local 3 // int immLo
        end local 2 // int immHi
        end local 1 // int imm
        end local 0 // int imm21
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0  imm21  I
            2    5     1    imm  I
            3    5     2  immHi  I
            4    5     3  immLo  I
    MethodParameters:
       Name  Flags
      imm21  

  protected void add(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int aimm
         0: .line 1567
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1568
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1569
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* aimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1570
            return
        end local 4 // int aimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  aimm  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      aimm  

  protected void adds(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int aimm
         0: .line 1582
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1583
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1584
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADDS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* aimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1585
            return
        end local 4 // int aimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  aimm  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      aimm  

  protected void sub(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int aimm
         0: .line 1597
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1598
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1599
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* aimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1600
            return
        end local 4 // int aimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  aimm  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      aimm  

  protected void subs(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int aimm
         0: .line 1612
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1613
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1614
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SUBS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* aimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1615
            return
        end local 4 // int aimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  aimm  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      aimm  

  private void addSubImmInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int aimm
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1618
            aload 0 /* this */
            aload 5 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 285212672
            ior
            iload 4 /* aimm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.encodeAimm:(I)I
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 1619
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 4 // int aimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    2     2    dst  Ljdk/vm/ci/code/Register;
            0    2     3    src  Ljdk/vm/ci/code/Register;
            0    2     4   aimm  I
            0    2     5   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src    
      aimm   
      type   

  public void ccmp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register x
        start local 3 // jdk.vm.ci.code.Register y
        start local 4 // int aimm
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
         0: .line 1622
            aload 0 /* this */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CCMP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* x */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* y */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 4 /* aimm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.encodeAimm:(I)I
            ior
            aload 5 /* condition */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.encoding:I
            bipush 12
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 1623
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // int aimm
        end local 3 // jdk.vm.ci.code.Register y
        end local 2 // jdk.vm.ci.code.Register x
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2          x  Ljdk/vm/ci/code/Register;
            0    2     3          y  Ljdk/vm/ci/code/Register;
            0    2     4       aimm  I
            0    2     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    MethodParameters:
           Name  Flags
      size       
      x          
      y          
      aimm       
      condition  

  private static int encodeAimm(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // int imm
         0: .line 1633
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 0 /* imm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.isAimm:(I)Z
            ifne 1
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Immediate has to be legal arithmetic immediate value "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* imm */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1634
      StackMap locals:
      StackMap stack:
            bipush 12
            iload 0 /* imm */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifeq 3
         2: .line 1635
            iload 0 /* imm */
            bipush 10
            ishl
            ireturn
         3: .line 1639
      StackMap locals:
      StackMap stack:
            iload 0 /* imm */
            bipush 12
            iushr
            bipush 10
            ishl
            ldc 4194304
            ior
            ireturn
        end local 0 // int imm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0   imm  I
    MethodParameters:
      Name  Flags
      imm   

  protected static boolean isAimm(int);
    descriptor: (I)Z
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int imm
         0: .line 1651
            bipush 12
            iload 0 /* imm */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifne 2
            bipush 12
            iload 0 /* imm */
            bipush 12
            iushr
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifeq 1
            iload 0 /* imm */
            sipush 4095
            iand
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_1
            ireturn
        end local 0 // int imm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   imm  I
    MethodParameters:
      Name  Flags
      imm   

  public void and(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, long);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // long bimm
         0: .line 1665
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1666
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1667
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.AND:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            lload 4 /* bimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;JLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1668
            return
        end local 4 // long bimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  bimm  J
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      bimm  

  public void ands(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, long);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // long bimm
         0: .line 1679
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1680
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1681
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ANDS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            lload 4 /* bimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;JLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1682
            return
        end local 4 // long bimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  bimm  J
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      bimm  

  public void eor(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, long);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // long bimm
         0: .line 1693
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1694
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1695
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.EOR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            lload 4 /* bimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;JLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1696
            return
        end local 4 // long bimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  bimm  J
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      bimm  

  protected void orr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, long);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;J)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // long bimm
         0: .line 1707
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1708
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1709
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ORR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            lload 4 /* bimm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;JLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 1710
            return
        end local 4 // long bimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   dst  Ljdk/vm/ci/code/Register;
            0    4     3   src  Ljdk/vm/ci/code/Register;
            0    4     4  bimm  J
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      bimm  

  private void logicalImmInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, long, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;JLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // long bimm
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1715
            aload 6 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General32:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 4
         1: .line 1716
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            lload 4 /* bimm */
            bipush 32
            lshr
            lconst_0
            lcmp
            ifeq 2
            lload 4 /* bimm */
            bipush 32
            lshr
            ldc -1
            lcmp
            ifeq 2
            new java.lang.AssertionError
            dup
            ldc "Higher order bits for 32-bit instruction must either all be 0 or 1."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1717
      StackMap locals:
      StackMap stack:
            lload 4 /* bimm */
            bipush 32
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            land
            lstore 7 /* bimmValue */
        start local 7 // long bimmValue
         3: .line 1718
            goto 5
        end local 7 // long bimmValue
         4: .line 1719
      StackMap locals:
      StackMap stack:
            lload 4 /* bimm */
            lstore 7 /* bimmValue */
        start local 7 // long bimmValue
         5: .line 1721
      StackMap locals: long
      StackMap stack:
            aload 6 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 6
            iconst_1
            goto 7
      StackMap locals:
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: lload 7 /* bimmValue */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$LogicalImmediateTable.getLogicalImmEncoding:(ZJ)I
            istore 9 /* immEncoding */
        start local 9 // int immEncoding
         8: .line 1722
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 301989888
            ior
            iload 9 /* immEncoding */
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         9: .line 1723
            return
        end local 9 // int immEncoding
        end local 7 // long bimmValue
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 4 // long bimm
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   10     1        instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   10     2          dst  Ljdk/vm/ci/code/Register;
            0   10     3          src  Ljdk/vm/ci/code/Register;
            0   10     4         bimm  J
            0   10     6         type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            3    4     7    bimmValue  J
            5   10     7    bimmValue  J
            8   10     9  immEncoding  I
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src    
      bimm   
      type   

  protected void movz(int, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // int uimm16
        start local 4 // int shiftAmt
         0: .line 1737
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MOVZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            iload 3 /* uimm16 */
            iload 4 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.moveWideImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1738
            return
        end local 4 // int shiftAmt
        end local 3 // int uimm16
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1      size  I
            0    2     2       dst  Ljdk/vm/ci/code/Register;
            0    2     3    uimm16  I
            0    2     4  shiftAmt  I
    MethodParameters:
          Name  Flags
      size      
      dst       
      uimm16    
      shiftAmt  

  protected void movn(int, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // int uimm16
        start local 4 // int shiftAmt
         0: .line 1750
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MOVN:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            iload 3 /* uimm16 */
            iload 4 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.moveWideImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1751
            return
        end local 4 // int shiftAmt
        end local 3 // int uimm16
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1      size  I
            0    2     2       dst  Ljdk/vm/ci/code/Register;
            0    2     3    uimm16  I
            0    2     4  shiftAmt  I
    MethodParameters:
          Name  Flags
      size      
      dst       
      uimm16    
      shiftAmt  

  protected void movk(int, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // int uimm16
        start local 4 // int pos
         0: .line 1763
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MOVK:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            iload 3 /* uimm16 */
            iload 4 /* pos */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.moveWideImmInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1764
            return
        end local 4 // int pos
        end local 3 // int uimm16
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1    size  I
            0    2     2     dst  Ljdk/vm/ci/code/Register;
            0    2     3  uimm16  I
            0    2     4     pos  I
    MethodParameters:
        Name  Flags
      size    
      dst     
      uimm16  
      pos     

  private void moveWideImmInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, int, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // int uimm16
        start local 4 // int shiftAmt
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1767
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1768
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            bipush 16
            iload 3 /* uimm16 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifne 2
            new java.lang.AssertionError
            dup
            ldc "Immediate has to be unsigned 16bit"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1769
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            iload 4 /* shiftAmt */
            ifeq 4
            iload 4 /* shiftAmt */
            bipush 16
            if_icmpeq 4
            aload 5 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 3
            iload 4 /* shiftAmt */
            bipush 32
            if_icmpeq 4
            iload 4 /* shiftAmt */
            bipush 48
            if_icmpeq 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid shift amount: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 4 /* shiftAmt */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 1770
      StackMap locals:
      StackMap stack:
            iload 4 /* shiftAmt */
            iconst_4
            ishr
            istore 6 /* shiftValue */
        start local 6 // int shiftValue
         5: .line 1771
            aload 0 /* this */
            aload 5 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 310378496
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            iload 3 /* uimm16 */
            iconst_5
            ishl
            ior
            iload 6 /* shiftValue */
            bipush 21
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         6: .line 1772
            return
        end local 6 // int shiftValue
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 4 // int shiftAmt
        end local 3 // int uimm16
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    7     1       instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    7     2         dst  Ljdk/vm/ci/code/Register;
            0    7     3      uimm16  I
            0    7     4    shiftAmt  I
            0    7     5        type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            5    7     6  shiftValue  I
    MethodParameters:
          Name  Flags
      instr     
      dst       
      uimm16    
      shiftAmt  
      type      

  public void bfm(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int r
        start local 5 // int s
         0: .line 1786
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BFM:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* r */
            iload 5 /* s */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.bitfieldInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1787
            return
        end local 5 // int s
        end local 4 // int r
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
            0    2     4     r  I
            0    2     5     s  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      r     
      s     

  public void ubfm(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int r
        start local 5 // int s
         0: .line 1799
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.UBFM:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* r */
            iload 5 /* s */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.bitfieldInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1800
            return
        end local 5 // int s
        end local 4 // int r
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
            0    2     4     r  I
            0    2     5     s  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      r     
      s     

  protected void sbfm(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int r
        start local 5 // int s
         0: .line 1812
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SBFM:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 4 /* r */
            iload 5 /* s */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.bitfieldInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1813
            return
        end local 5 // int s
        end local 4 // int r
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
            0    2     4     r  I
            0    2     5     s  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   
      r     
      s     

  private void bitfieldInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;IILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // int r
        start local 5 // int s
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1816
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1817
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifne 3
            aload 3 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1818
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 6
            iload 5 /* s */
            iflt 5
            iload 5 /* s */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.width:I
            if_icmpge 5
            iload 4 /* r */
            iflt 5
            iload 4 /* r */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.width:I
            if_icmplt 6
      StackMap locals:
      StackMap stack:
         5: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 1819
      StackMap locals:
      StackMap stack:
            aload 6 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 7
            ldc 4194304
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 7 /* sf */
        start local 7 // int sf
         9: .line 1820
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 318767104
            ior
            iload 7 /* sf */
            ior
            iload 4 /* r */
            bipush 16
            ishl
            ior
            iload 5 /* s */
            bipush 10
            ishl
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        10: .line 1821
            return
        end local 7 // int sf
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // int s
        end local 4 // int r
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   11     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   11     2    dst  Ljdk/vm/ci/code/Register;
            0   11     3    src  Ljdk/vm/ci/code/Register;
            0   11     4      r  I
            0   11     5      s  I
            0   11     6   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            9   11     7     sf  I
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src    
      r      
      s      
      type   

  protected void extr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=8, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // int lsb
         0: .line 1835
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1836
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1837
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1838
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 6 /* type */
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         4: .line 1839
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 6
            iload 5 /* lsb */
            iflt 5
            iload 5 /* lsb */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.width:I
            if_icmplt 6
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType
      StackMap stack:
         5: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 1840
      StackMap locals:
      StackMap stack:
            aload 6 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 7
            ldc 4194304
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 7 /* sf */
        start local 7 // int sf
         9: .line 1841
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.EXTR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 7 /* sf */
            ior
            iload 5 /* lsb */
            bipush 10
            ishl
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        10: .line 1842
            return
        end local 7 // int sf
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // int lsb
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   11     1  size  I
            0   11     2   dst  Ljdk/vm/ci/code/Register;
            0   11     3  src1  Ljdk/vm/ci/code/Register;
            0   11     4  src2  Ljdk/vm/ci/code/Register;
            0   11     5   lsb  I
            4   11     6  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            9   11     7    sf  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  
      lsb   

  protected void add(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int imm
         0: .line 1857
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* imm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubShiftedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1858
            return
        end local 6 // int imm
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6        imm  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      imm        

  public void adds(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int imm
         0: .line 1871
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADDS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* imm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubShiftedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1872
            return
        end local 6 // int imm
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6        imm  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      imm        

  protected void sub(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int imm
         0: .line 1885
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* imm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubShiftedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1886
            return
        end local 6 // int imm
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6        imm  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      imm        

  public void subs(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int imm
         0: .line 1899
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SUBS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* imm */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubShiftedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1900
            return
        end local 6 // int imm
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6        imm  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      imm        

  private void addSubShiftedInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int imm
        start local 7 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1903
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 5 /* shiftType */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType.ROR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            if_acmpne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1904
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            iload 6 /* imm */
            iflt 2
            iload 6 /* imm */
            aload 7 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.width:I
            if_icmplt 3
      StackMap locals:
      StackMap stack:
         2: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1905
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 184549376
            ior
            iload 6 /* imm */
            bipush 10
            ishl
            ior
            aload 5 /* shiftType */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType.encoding:I
            bipush 22
            ishl
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 1906
            return
        end local 7 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 6 // int imm
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1      instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    5     2        dst  Ljdk/vm/ci/code/Register;
            0    5     3       src1  Ljdk/vm/ci/code/Register;
            0    5     4       src2  Ljdk/vm/ci/code/Register;
            0    5     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    5     6        imm  I
            0    5     7       type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
           Name  Flags
      instr      
      dst        
      src1       
      src2       
      shiftType  
      imm        
      type       

  public void add(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        start local 6 // int shiftAmt
         0: .line 1920
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1921
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1922
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1923
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* extendType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubExtendedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         4: .line 1924
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1        size  I
            0    5     2         dst  Ljdk/vm/ci/code/Register;
            0    5     3        src1  Ljdk/vm/ci/code/Register;
            0    5     4        src2  Ljdk/vm/ci/code/Register;
            0    5     5  extendType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
            0    5     6    shiftAmt  I
    MethodParameters:
            Name  Flags
      size        
      dst         
      src1        
      src2        
      extendType  
      shiftAmt    

  protected void adds(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        start local 6 // int shiftAmt
         0: .line 1937
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1938
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1939
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1940
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADDS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* extendType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubExtendedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         4: .line 1941
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1        size  I
            0    5     2         dst  Ljdk/vm/ci/code/Register;
            0    5     3        src1  Ljdk/vm/ci/code/Register;
            0    5     4        src2  Ljdk/vm/ci/code/Register;
            0    5     5  extendType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
            0    5     6    shiftAmt  I
    MethodParameters:
            Name  Flags
      size        
      dst         
      src1        
      src2        
      extendType  
      shiftAmt    

  protected void sub(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        start local 6 // int shiftAmt
         0: .line 1954
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1955
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1956
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1957
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* extendType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubExtendedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         4: .line 1958
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1        size  I
            0    5     2         dst  Ljdk/vm/ci/code/Register;
            0    5     3        src1  Ljdk/vm/ci/code/Register;
            0    5     4        src2  Ljdk/vm/ci/code/Register;
            0    5     5  extendType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
            0    5     6    shiftAmt  I
    MethodParameters:
            Name  Flags
      size        
      dst         
      src1        
      src2        
      extendType  
      shiftAmt    

  public void subs(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        start local 6 // int shiftAmt
         0: .line 1971
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1972
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1973
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1974
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SUBS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* extendType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.addSubExtendedInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         4: .line 1975
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1        size  I
            0    5     2         dst  Ljdk/vm/ci/code/Register;
            0    5     3        src1  Ljdk/vm/ci/code/Register;
            0    5     4        src2  Ljdk/vm/ci/code/Register;
            0    5     5  extendType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
            0    5     6    shiftAmt  I
    MethodParameters:
            Name  Flags
      size        
      dst         
      src1        
      src2        
      extendType  
      shiftAmt    

  private void addSubExtendedInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        start local 6 // int shiftAmt
        start local 7 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 1978
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 6 /* shiftAmt */
            iflt 1
            iload 6 /* shiftAmt */
            iconst_4
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1979
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 186646528
            ior
            iload 6 /* shiftAmt */
            bipush 10
            ishl
            ior
            aload 5 /* extendType */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType.encoding:I
            bipush 13
            ishl
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         3: .line 1980
            return
        end local 7 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1       instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    4     2         dst  Ljdk/vm/ci/code/Register;
            0    4     3        src1  Ljdk/vm/ci/code/Register;
            0    4     4        src2  Ljdk/vm/ci/code/Register;
            0    4     5  extendType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ExtendType;
            0    4     6    shiftAmt  I
            0    4     7        type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
            Name  Flags
      instr       
      dst         
      src1        
      src2        
      extendType  
      shiftAmt    
      type        

  protected void and(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 1994
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.AND:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 1995
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void ands(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2008
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ANDS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2009
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void bic(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2022
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BIC:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2023
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void bics(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2036
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BICS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2037
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void eon(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2050
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.EON:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2051
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void eor(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2064
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.EOR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2065
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void orr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2078
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ORR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2079
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  protected void orn(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
         0: .line 2092
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ORN:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* shiftType */
            iload 6 /* shiftAmt */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.logicalRegInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2093
            return
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    2     6   shiftAmt  I
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   

  private void logicalRegInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        start local 6 // int shiftAmt
        start local 7 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2096
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2097
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2098
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2099
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 5
            iload 6 /* shiftAmt */
            iflt 4
            iload 6 /* shiftAmt */
            aload 7 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.width:I
            if_icmplt 5
      StackMap locals:
      StackMap stack:
         4: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 2100
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 167772160
            ior
            iload 6 /* shiftAmt */
            bipush 10
            ishl
            ior
            aload 5 /* shiftType */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType.encoding:I
            bipush 22
            ishl
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         6: .line 2101
            return
        end local 7 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 6 // int shiftAmt
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType shiftType
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    7     1      instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    7     2        dst  Ljdk/vm/ci/code/Register;
            0    7     3       src1  Ljdk/vm/ci/code/Register;
            0    7     4       src2  Ljdk/vm/ci/code/Register;
            0    7     5  shiftType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ShiftType;
            0    7     6   shiftAmt  I
            0    7     7       type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
           Name  Flags
      instr      
      dst        
      src1       
      src2       
      shiftType  
      shiftAmt   
      type       

  protected void asr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2113
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ASRV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing2SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2114
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  protected void lsl(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2125
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LSLV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing2SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2126
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  protected void lsr(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2137
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LSRV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing2SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2138
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  protected void ror(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2149
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.RORV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing2SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2150
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  protected void cls(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2164
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CLS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing1SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2165
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void clz(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2175
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CLZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing1SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2176
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void rbit(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2186
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.RBIT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing1SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2187
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void rev(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2197
            iload 1 /* size */
            bipush 64
            if_icmpne 3
         1: .line 2198
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.REVX:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing1SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         2: .line 2199
            goto 5
         3: .line 2200
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            iload 1 /* size */
            bipush 32
            if_icmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.REVW:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing1SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         5: .line 2203
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1  size  I
            0    6     2   dst  Ljdk/vm/ci/code/Register;
            0    6     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  protected void csel(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
         0: .line 2217
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CSEL:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* condition */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalSelectInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2218
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      condition  

  protected void csneg(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
         0: .line 2230
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CSNEG:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* condition */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalSelectInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2231
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      condition  

  protected void csinc(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
         0: .line 2243
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CSINC:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* condition */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.conditionalSelectInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2244
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1       size  I
            0    2     2        dst  Ljdk/vm/ci/code/Register;
            0    2     3       src1  Ljdk/vm/ci/code/Register;
            0    2     4       src2  Ljdk/vm/ci/code/Register;
            0    2     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      condition  

  private void conditionalSelectInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2247
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2248
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2249
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2250
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 444596224
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 5 /* condition */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.encoding:I
            bipush 12
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2251
            return
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1      instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    5     2        dst  Ljdk/vm/ci/code/Register;
            0    5     3       src1  Ljdk/vm/ci/code/Register;
            0    5     4       src2  Ljdk/vm/ci/code/Register;
            0    5     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            0    5     6       type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
           Name  Flags
      instr      
      dst        
      src1       
      src2       
      condition  
      type       

  protected void madd(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // jdk.vm.ci.code.Register src3
         0: .line 2265
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* src3 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.mulInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2266
            return
        end local 5 // jdk.vm.ci.code.Register src3
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
            0    2     5  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  
      src3  

  protected void msub(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // jdk.vm.ci.code.Register src3
         0: .line 2278
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MSUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* src3 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.mulInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2279
            return
        end local 5 // jdk.vm.ci.code.Register src3
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
            0    2     5  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  
      src3  

  protected void smulh(jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
         0: .line 2289
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2290
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2291
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 3 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2292
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc -1690304512
            aload 1 /* dst */
            getfield jdk.vm.ci.code.Register.encoding:I
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            sipush 31744
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2293
            return
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1   dst  Ljdk/vm/ci/code/Register;
            0    5     2  src1  Ljdk/vm/ci/code/Register;
            0    5     3  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      dst   
      src1  
      src2  

  protected void umulh(jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
         0: .line 2303
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2304
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2305
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 3 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc -1681915904
            aload 1 /* dst */
            getfield jdk.vm.ci.code.Register.encoding:I
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            sipush 31744
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2307
            return
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1   dst  Ljdk/vm/ci/code/Register;
            0    5     2  src1  Ljdk/vm/ci/code/Register;
            0    5     3  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      dst   
      src1  
      src2  

  protected void umaddl(jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
        start local 4 // jdk.vm.ci.code.Register src3
         0: .line 2318
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2319
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2320
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 3 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2321
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 4 /* src3 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2322
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc -1684013056
            aload 1 /* dst */
            getfield jdk.vm.ci.code.Register.encoding:I
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            sipush 31744
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 2323
            return
        end local 4 // jdk.vm.ci.code.Register src3
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1   dst  Ljdk/vm/ci/code/Register;
            0    6     2  src1  Ljdk/vm/ci/code/Register;
            0    6     3  src2  Ljdk/vm/ci/code/Register;
            0    6     4  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      dst   
      src1  
      src2  
      src3  

  public void smaddl(jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
        start local 4 // jdk.vm.ci.code.Register src3
         0: .line 2334
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 1 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2335
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2336
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 3 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2337
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 4 /* src3 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2338
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc -1692401664
            aload 1 /* dst */
            getfield jdk.vm.ci.code.Register.encoding:I
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src3 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs3:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 2339
            return
        end local 4 // jdk.vm.ci.code.Register src3
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1   dst  Ljdk/vm/ci/code/Register;
            0    6     2  src1  Ljdk/vm/ci/code/Register;
            0    6     3  src2  Ljdk/vm/ci/code/Register;
            0    6     4  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      dst   
      src1  
      src2  
      src3  

  private void mulInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // jdk.vm.ci.code.Register src3
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2342
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2343
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2344
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2345
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 5 /* src3 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 452984832
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 5 /* src3 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs3:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 2347
            return
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // jdk.vm.ci.code.Register src3
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    6     2    dst  Ljdk/vm/ci/code/Register;
            0    6     3   src1  Ljdk/vm/ci/code/Register;
            0    6     4   src2  Ljdk/vm/ci/code/Register;
            0    6     5   src3  Ljdk/vm/ci/code/Register;
            0    6     6   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src1   
      src2   
      src3   
      type   

  public void sdiv(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2358
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SDIV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing2SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2359
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  public void udiv(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2370
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.UDIV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.dataProcessing2SourceOp:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2371
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  private void dataProcessing1SourceOp(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2374
            aload 0 /* this */
            aload 4 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 1522532352
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2375
            return
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    2     2    dst  Ljdk/vm/ci/code/Register;
            0    2     3    src  Ljdk/vm/ci/code/Register;
            0    2     4   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src    
      type   

  private void dataProcessing2SourceOp(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2378
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2379
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2380
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2381
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 448790528
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2382
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    5     2    dst  Ljdk/vm/ci/code/Register;
            0    5     3   src1  Ljdk/vm/ci/code/Register;
            0    5     4   src2  Ljdk/vm/ci/code/Register;
            0    5     5   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src1   
      src2   
      type   

  public void fldr(int, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 2395
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2396
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 1 /* size */
            bipush 32
            if_icmpeq 2
            iload 1 /* size */
            bipush 64
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2397
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         3: .line 2398
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.LDR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* address */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.FP32:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
         4: .line 2399
            return
        end local 4 // int transferSize
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1          size  I
            0    5     2            rt  Ljdk/vm/ci/code/Register;
            0    5     3       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            3    5     4  transferSize  I
    MethodParameters:
         Name  Flags
      size     
      rt       
      address  

  public void fstr(int, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILjdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register rt
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 2409
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* rt */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2410
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            iload 1 /* size */
            bipush 32
            if_icmpeq 2
            iload 1 /* size */
            bipush 64
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2411
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            bipush 8
            idiv
            invokestatic org.graalvm.compiler.core.common.NumUtil.log2Ceil:(I)I
            istore 4 /* transferSize */
        start local 4 // int transferSize
         3: .line 2412
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.STR:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* rt */
            aload 3 /* address */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.FP64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 4 /* transferSize */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStoreInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;I)V
         4: .line 2413
            return
        end local 4 // int transferSize
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 2 // jdk.vm.ci.code.Register rt
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1          size  I
            0    5     2            rt  Ljdk/vm/ci/code/Register;
            0    5     3       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            3    5     4  transferSize  I
    MethodParameters:
         Name  Flags
      size     
      rt       
      address  

  protected void fmov(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2425
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMOV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2426
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  protected void fmovFpu2Cpu(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2436
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2437
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2438
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            bipush 64
            if_icmpne 3
            iconst_1
            goto 4
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler jdk.vm.ci.code.Register jdk.vm.ci.code.Register
         3: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler jdk.vm.ci.code.Register jdk.vm.ci.code.Register int
         4: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMOVFPU2CPU:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fmovCpuFpuInstruction:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ZLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;)V
         5: .line 2439
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1  size  I
            0    6     2   dst  Ljdk/vm/ci/code/Register;
            0    6     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  protected void fmovCpu2Fpu(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2449
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2450
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.CPU:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            bipush 64
            if_icmpne 3
            iconst_1
            goto 4
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler jdk.vm.ci.code.Register jdk.vm.ci.code.Register
         3: iconst_0
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler int jdk.vm.ci.code.Register jdk.vm.ci.code.Register
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler jdk.vm.ci.code.Register jdk.vm.ci.code.Register int
         4: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMOVCPU2FPU:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fmovCpuFpuInstruction:(Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ZLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;)V
         5: .line 2452
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1  size  I
            0    6     2   dst  Ljdk/vm/ci/code/Register;
            0    6     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  private void fmovCpuFpuInstruction(jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, boolean, org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction);
    descriptor: (Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ZLorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // jdk.vm.ci.code.Register src
        start local 3 // boolean is64bit
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
         0: .line 2455
            iload 3 /* is64bit */
            ifeq 1
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.FP64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            ior
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.FP32:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General32:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            ior
      StackMap locals:
      StackMap stack: int
         2: istore 5 /* sf */
        start local 5 // int sf
         3: .line 2456
            aload 0 /* this */
            iload 5 /* sf */
            aload 4 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505413632
            ior
            aload 1 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 2 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2457
            return
        end local 5 // int sf
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 3 // boolean is64bit
        end local 2 // jdk.vm.ci.code.Register src
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1      dst  Ljdk/vm/ci/code/Register;
            0    5     2      src  Ljdk/vm/ci/code/Register;
            0    5     3  is64bit  Z
            0    5     4    instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            3    5     5       sf  I
    MethodParameters:
         Name  Flags
      dst      
      src      
      is64bit  
      instr    

  protected void fmov(int, jdk.vm.ci.code.Register, double);
    descriptor: (ILjdk/vm/ci/code/Register;D)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // double imm
         0: .line 2472
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2473
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 5 /* type */
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         2: .line 2475
            aload 5 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.FP64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 5
         3: .line 2476
            dload 3 /* imm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getDoubleImmediate:(D)I
            istore 6 /* immEncoding */
        start local 6 // int immEncoding
         4: .line 2477
            goto 7
        end local 6 // int immEncoding
         5: .line 2478
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 6
            dload 3 /* imm */
            dload 3 /* imm */
            d2f
            f2d
            dcmpl
            ifeq 6
            new java.lang.AssertionError
            dup
            ldc "float mov must use an immediate that can be represented using a float."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 2479
      StackMap locals:
      StackMap stack:
            dload 3 /* imm */
            d2f
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getFloatImmediate:(F)I
            istore 6 /* immEncoding */
        start local 6 // int immEncoding
         7: .line 2481
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 5 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMOV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505417728
            ior
            iload 6 /* immEncoding */
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         8: .line 2482
            return
        end local 6 // int immEncoding
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 3 // double imm
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    9     1         size  I
            0    9     2          dst  Ljdk/vm/ci/code/Register;
            0    9     3          imm  D
            2    9     5         type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            4    5     6  immEncoding  I
            7    9     6  immEncoding  I
    MethodParameters:
      Name  Flags
      size  
      dst   
      imm   

  private static int getDoubleImmediate(double);
    descriptor: (D)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // double imm
         0: .line 2485
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            dload 0 /* imm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.isDoubleImmediate:(D)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2488
      StackMap locals:
      StackMap stack:
            dload 0 /* imm */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* repr */
        start local 2 // long repr
         2: .line 2489
            lload 2 /* repr */
            bipush 63
            lushr
            l2i
            bipush 7
            ishl
            istore 4 /* a */
        start local 4 // int a
         3: .line 2490
            lload 2 /* repr */
            bipush 61
            lushr
            lconst_1
            land
            l2i
            bipush 6
            ishl
            istore 5 /* b */
        start local 5 // int b
         4: .line 2491
            lload 2 /* repr */
            bipush 48
            lushr
            l2i
            bipush 63
            iand
            istore 6 /* cToH */
        start local 6 // int cToH
         5: .line 2492
            iload 4 /* a */
            iload 5 /* b */
            ior
            iload 6 /* cToH */
            ior
            bipush 13
            ishl
            ireturn
        end local 6 // int cToH
        end local 5 // int b
        end local 4 // int a
        end local 2 // long repr
        end local 0 // double imm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0   imm  D
            2    6     2  repr  J
            3    6     4     a  I
            4    6     5     b  I
            5    6     6  cToH  I
    MethodParameters:
      Name  Flags
      imm   

  protected static boolean isDoubleImmediate(double);
    descriptor: (D)Z
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // double imm
         0: .line 2499
            dload 0 /* imm */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* bits */
        start local 2 // long bits
         1: .line 2501
            lload 2 /* bits */
            bipush 48
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            land
            lconst_0
            lcmp
            ifeq 3
         2: .line 2502
            iconst_0
            ireturn
         3: .line 2505
      StackMap locals: long
      StackMap stack:
            lload 2 /* bits */
            bipush 54
            lshr
            bipush 7
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            land
            lstore 4 /* pattern */
        start local 4 // long pattern
         4: .line 2506
            lload 4 /* pattern */
            lconst_0
            lcmp
            ifeq 6
            lload 4 /* pattern */
            bipush 7
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            lcmp
            ifeq 6
         5: .line 2507
            iconst_0
            ireturn
         6: .line 2510
      StackMap locals: long
      StackMap stack:
            lload 2 /* bits */
            lload 2 /* bits */
            iconst_1
            lshl
            lxor
            ldc 4611686018427387904
            land
            lconst_0
            lcmp
            ifeq 7
            iconst_1
            goto 8
      StackMap locals:
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 6 /* result */
        start local 6 // boolean result
         9: .line 2511
            iload 6 /* result */
            ireturn
        end local 6 // boolean result
        end local 4 // long pattern
        end local 2 // long bits
        end local 0 // double imm
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0      imm  D
            1   10     2     bits  J
            4   10     4  pattern  J
            9   10     6   result  Z
    MethodParameters:
      Name  Flags
      imm   

  private static int getFloatImmediate(float);
    descriptor: (F)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // float imm
         0: .line 2515
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            fload 0 /* imm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.isFloatImmediate:(F)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2517
      StackMap locals:
      StackMap stack:
            fload 0 /* imm */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* repr */
        start local 1 // int repr
         2: .line 2518
            iload 1 /* repr */
            bipush 31
            iushr
            bipush 7
            ishl
            istore 2 /* a */
        start local 2 // int a
         3: .line 2519
            iload 1 /* repr */
            bipush 29
            iushr
            iconst_1
            iand
            bipush 6
            ishl
            istore 3 /* b */
        start local 3 // int b
         4: .line 2520
            iload 1 /* repr */
            bipush 19
            iushr
            bipush 6
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            istore 4 /* cToH */
        start local 4 // int cToH
         5: .line 2521
            iload 2 /* a */
            iload 3 /* b */
            ior
            iload 4 /* cToH */
            ior
            bipush 13
            ishl
            ireturn
        end local 4 // int cToH
        end local 3 // int b
        end local 2 // int a
        end local 1 // int repr
        end local 0 // float imm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0   imm  F
            2    6     1  repr  I
            3    6     2     a  I
            4    6     3     b  I
            5    6     4  cToH  I
    MethodParameters:
      Name  Flags
      imm   

  protected static boolean isFloatImmediate(float);
    descriptor: (F)Z
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // float imm
         0: .line 2527
            fload 0 /* imm */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* bits */
        start local 1 // int bits
         1: .line 2529
            iload 1 /* bits */
            bipush 19
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            ifeq 3
         2: .line 2530
            iconst_0
            ireturn
         3: .line 2533
      StackMap locals: int
      StackMap stack:
            iload 1 /* bits */
            bipush 25
            ishr
            iconst_5
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            istore 2 /* pattern */
        start local 2 // int pattern
         4: .line 2534
            iload 2 /* pattern */
            ifeq 6
            iload 2 /* pattern */
            iconst_5
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            if_icmpeq 6
         5: .line 2535
            iconst_0
            ireturn
         6: .line 2538
      StackMap locals: int
      StackMap stack:
            iload 1 /* bits */
            iload 1 /* bits */
            iconst_1
            ishl
            ixor
            ldc 1073741824
            iand
            ifeq 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 2 // int pattern
        end local 1 // int bits
        end local 0 // float imm
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0      imm  F
            1    8     1     bits  I
            4    8     2  pattern  I
    MethodParameters:
      Name  Flags
      imm   

  public void fcvt(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int srcSize
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2552
            iload 1 /* srcSize */
            bipush 32
            if_icmpne 3
         1: .line 2553
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCVTDS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* srcSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         2: .line 2554
            goto 4
         3: .line 2555
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCVTSD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* srcSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         4: .line 2557
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int srcSize
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  srcSize  I
            0    5     2      dst  Ljdk/vm/ci/code/Register;
            0    5     3      src  Ljdk/vm/ci/code/Register;
    MethodParameters:
         Name  Flags
      srcSize  
      dst      
      src      

  public void fcvtzs(int, int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (IILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int targetSize
        start local 2 // int srcSize
        start local 3 // jdk.vm.ci.code.Register dst
        start local 4 // jdk.vm.ci.code.Register src
         0: .line 2570
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.zr:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifne 1
            aload 3 /* dst */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2571
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2572
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCVTZS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 3 /* dst */
            aload 4 /* src */
            iload 1 /* targetSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 2 /* srcSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fcvtCpuFpuInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         4: .line 2573
            return
        end local 4 // jdk.vm.ci.code.Register src
        end local 3 // jdk.vm.ci.code.Register dst
        end local 2 // int srcSize
        end local 1 // int targetSize
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  targetSize  I
            0    5     2     srcSize  I
            0    5     3         dst  Ljdk/vm/ci/code/Register;
            0    5     4         src  Ljdk/vm/ci/code/Register;
    MethodParameters:
            Name  Flags
      targetSize  
      srcSize     
      dst         
      src         

  public void scvtf(int, int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (IILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int targetSize
        start local 2 // int srcSize
        start local 3 // jdk.vm.ci.code.Register dst
        start local 4 // jdk.vm.ci.code.Register src
         0: .line 2585
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 3 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2586
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 4 /* src */
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2587
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.SCVTF:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 3 /* dst */
            aload 4 /* src */
            iload 1 /* targetSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            iload 2 /* srcSize */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.generalFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fcvtCpuFpuInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         3: .line 2588
            return
        end local 4 // jdk.vm.ci.code.Register src
        end local 3 // jdk.vm.ci.code.Register dst
        end local 2 // int srcSize
        end local 1 // int targetSize
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  targetSize  I
            0    4     2     srcSize  I
            0    4     3         dst  Ljdk/vm/ci/code/Register;
            0    4     4         src  Ljdk/vm/ci/code/Register;
    MethodParameters:
            Name  Flags
      targetSize  
      srcSize     
      dst         
      src         

  private void fcvtCpuFpuInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type1
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type2
         0: .line 2591
            aload 0 /* this */
            aload 4 /* type1 */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 5 /* type2 */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            ior
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505413632
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2592
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type2
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type1
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    2     2    dst  Ljdk/vm/ci/code/Register;
            0    2     3    src  Ljdk/vm/ci/code/Register;
            0    2     4  type1  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            0    2     5  type2  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src    
      type1  
      type2  

  protected void frintz(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2604
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FRINTZ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2605
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void frintn(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2615
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FRINTN:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2616
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void frintm(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2626
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FRINTM:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2627
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void frintp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2637
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FRINTP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2638
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void fabs(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2650
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FABS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2651
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void fneg(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2661
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FNEG:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2662
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void fsqrt(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 2672
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FSQRT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing1Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2673
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  private void fpDataProcessing1Source(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2676
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2677
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2678
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505430016
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         3: .line 2679
            return
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    4     2    dst  Ljdk/vm/ci/code/Register;
            0    4     3    src  Ljdk/vm/ci/code/Register;
            0    4     4   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src    
      type   

  public void fadd(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2692
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing2Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2693
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  public void fsub(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2704
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FSUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing2Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2705
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  public void fmul(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2716
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMUL:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing2Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2717
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  public void fdiv(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
         0: .line 2728
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FDIV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing2Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2729
            return
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  

  private void fpDataProcessing2Source(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2732
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2733
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2734
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2735
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505415680
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2736
            return
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    5     2    dst  Ljdk/vm/ci/code/Register;
            0    5     3   src1  Ljdk/vm/ci/code/Register;
            0    5     4   src2  Ljdk/vm/ci/code/Register;
            0    5     5   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src1   
      src2   
      type   

  protected void fmadd(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // jdk.vm.ci.code.Register src3
         0: .line 2750
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* src3 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing3Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2751
            return
        end local 5 // jdk.vm.ci.code.Register src3
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
            0    2     5  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  
      src3  

  protected void fmsub(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // jdk.vm.ci.code.Register src3
         0: .line 2763
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FMSUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 2 /* dst */
            aload 3 /* src1 */
            aload 4 /* src2 */
            aload 5 /* src3 */
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.fpDataProcessing3Source:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
         1: .line 2764
            return
        end local 5 // jdk.vm.ci.code.Register src3
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  size  I
            0    2     2   dst  Ljdk/vm/ci/code/Register;
            0    2     3  src1  Ljdk/vm/ci/code/Register;
            0    2     4  src2  Ljdk/vm/ci/code/Register;
            0    2     5  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src1  
      src2  
      src3  

  private void fpDataProcessing3Source(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // jdk.vm.ci.code.Register src3
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         0: .line 2767
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2768
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2769
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2770
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 4
            aload 5 /* src3 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2771
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 520093696
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 5 /* src3 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs3:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 2772
            return
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // jdk.vm.ci.code.Register src3
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1  instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    6     2    dst  Ljdk/vm/ci/code/Register;
            0    6     3   src1  Ljdk/vm/ci/code/Register;
            0    6     4   src2  Ljdk/vm/ci/code/Register;
            0    6     5   src3  Ljdk/vm/ci/code/Register;
            0    6     6   type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src1   
      src2   
      src3   
      type   

  public void fcmp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
         0: .line 2784
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* src1 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2785
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src2 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2786
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 4 /* type */
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         3: .line 2787
            aload 0 /* this */
            aload 4 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCMP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505421824
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2788
            return
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  size  I
            0    5     2  src1  Ljdk/vm/ci/code/Register;
            0    5     3  src2  Ljdk/vm/ci/code/Register;
            3    5     4  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
      Name  Flags
      size  
      src1  
      src2  

  public void fcmpe(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
         0: .line 2798
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* src1 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2799
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src2 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2800
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 4 /* type */
        start local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         3: .line 2801
            aload 0 /* this */
            aload 4 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCMP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505421840
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 2802
            return
        end local 4 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1  size  I
            0    5     2  src1  Ljdk/vm/ci/code/Register;
            0    5     3  src2  Ljdk/vm/ci/code/Register;
            3    5     4  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
      Name  Flags
      size  
      src1  
      src2  

  public void fccmp(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register src1
        start local 3 // jdk.vm.ci.code.Register src2
        start local 4 // int uimm4
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
         0: .line 2814
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iconst_4
            iload 4 /* uimm4 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2815
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 2 /* src1 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2816
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 3 /* src2 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2817
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 6 /* type */
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         4: .line 2818
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCCMP:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 4 /* uimm4 */
            ior
            aload 5 /* condition */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.encoding:I
            bipush 12
            ishl
            ior
            aload 2 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 2819
            return
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // int uimm4
        end local 3 // jdk.vm.ci.code.Register src2
        end local 2 // jdk.vm.ci.code.Register src1
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1       size  I
            0    6     2       src1  Ljdk/vm/ci/code/Register;
            0    6     3       src2  Ljdk/vm/ci/code/Register;
            0    6     4      uimm4  I
            0    6     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            4    6     6       type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
           Name  Flags
      size       
      src1       
      src2       
      uimm4      
      condition  

  public void fcmpZero(int, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register src
         0: .line 2828
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* src */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2829
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 3 /* type */
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         2: .line 2830
            aload 0 /* this */
            aload 3 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCMPZERO:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505421824
            ior
            aload 2 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         3: .line 2831
            return
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 2 // jdk.vm.ci.code.Register src
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   src  Ljdk/vm/ci/code/Register;
            2    4     3  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
      Name  Flags
      size  
      src   

  public void fcmpeZero(int, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register src
         0: .line 2840
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* src */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2841
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 3 /* type */
        start local 3 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         2: .line 2842
            aload 0 /* this */
            aload 3 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCMPZERO:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            ldc 505421840
            ior
            aload 2 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         3: .line 2843
            return
        end local 3 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 2 // jdk.vm.ci.code.Register src
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    4     1  size  I
            0    4     2   src  Ljdk/vm/ci/code/Register;
            2    4     3  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
      Name  Flags
      size  
      src   

  protected void fcsel(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src1
        start local 4 // jdk.vm.ci.code.Register src2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
         0: .line 2857
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            aload 2 /* dst */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2858
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            aload 3 /* src1 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 2859
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            aload 4 /* src2 */
            invokevirtual jdk.vm.ci.code.Register.getRegisterCategory:()Ljdk/vm/ci/code/Register$RegisterCategory;
            getstatic jdk.vm.ci.aarch64.AArch64.SIMD:Ljdk/vm/ci/code/Register$RegisterCategory;
            invokevirtual jdk.vm.ci.code.Register$RegisterCategory.equals:(Ljava/lang/Object;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2860
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.floatFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 6 /* type */
        start local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
         4: .line 2861
            aload 0 /* this */
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.FCSEL:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src1 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 5 /* condition */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.encoding:I
            bipush 12
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         5: .line 2862
            return
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag condition
        end local 4 // jdk.vm.ci.code.Register src2
        end local 3 // jdk.vm.ci.code.Register src1
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    6     1       size  I
            0    6     2        dst  Ljdk/vm/ci/code/Register;
            0    6     3       src1  Ljdk/vm/ci/code/Register;
            0    6     4       src2  Ljdk/vm/ci/code/Register;
            0    6     5  condition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            4    6     6       type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
    MethodParameters:
           Name  Flags
      size       
      dst        
      src1       
      src2       
      condition  

  protected void hlt(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int uimm16
         0: .line 2873
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.HLT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iload 1 /* uimm16 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exceptionInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 2874
            return
        end local 1 // int uimm16
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  uimm16  I
    MethodParameters:
        Name  Flags
      uimm16  

  protected void brk(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int uimm16
         0: .line 2883
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.BRK:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            iload 1 /* uimm16 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.exceptionInstruction:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
         1: .line 2884
            return
        end local 1 // int uimm16
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  uimm16  I
    MethodParameters:
        Name  Flags
      uimm16  

  private void exceptionInstruction(org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, int);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 2 // int uimm16
         0: .line 2887
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            bipush 16
            iload 2 /* uimm16 */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2888
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc -738197504
            ior
            iload 2 /* uimm16 */
            iconst_5
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         2: .line 2889
            return
        end local 2 // int uimm16
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    3     1   instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    3     2  uimm16  I
    MethodParameters:
        Name  Flags
      instr   
      uimm16  

  protected void hint(org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemHint);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SystemHint;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemHint hint
         0: .line 2914
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.HINT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            aload 1 /* hint */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemHint.encoding:I
            iconst_5
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2915
            return
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemHint hint
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  hint  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SystemHint;
    MethodParameters:
      Name  Flags
      hint  

  protected void clrex();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
         0: .line 2922
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CLREX:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2923
            return
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;

  public void dmb(org.graalvm.compiler.asm.aarch64.AArch64Assembler$BarrierKind);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$BarrierKind;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$BarrierKind barrierKind
         0: .line 2953
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.DMB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc -721211361
            ior
            aload 1 /* barrierKind */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$BarrierKind.encoding:I
            bipush 8
            ishl
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2954
            return
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$BarrierKind barrierKind
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  barrierKind  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$BarrierKind;
    MethodParameters:
             Name  Flags
      barrierKind  

  public void mrs(jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister);
    descriptor: (Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SystemRegister;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // jdk.vm.ci.code.Register dst
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister systemRegister
         0: .line 2957
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MRS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            aload 2 /* systemRegister */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister.encoding:()I
            ior
            aload 1 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2958
            return
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister systemRegister
        end local 1 // jdk.vm.ci.code.Register dst
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1             dst  Ljdk/vm/ci/code/Register;
            0    2     2  systemRegister  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SystemRegister;
    MethodParameters:
                Name  Flags
      dst             
      systemRegister  

  public void msr(org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SystemRegister;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister systemRegister
        start local 2 // jdk.vm.ci.code.Register src
         0: .line 2961
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MRS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            aload 1 /* systemRegister */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister.encoding:()I
            ior
            aload 2 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         1: .line 2962
            return
        end local 2 // jdk.vm.ci.code.Register src
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister systemRegister
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1  systemRegister  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SystemRegister;
            0    2     2             src  Ljdk/vm/ci/code/Register;
    MethodParameters:
                Name  Flags
      systemRegister  
      src             

  public void annotatePatchingImmediate(int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, int, int, int);
    descriptor: (ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int pos
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instruction
        start local 3 // int operandSizeBits
        start local 4 // int offsetBits
        start local 5 // int shift
         0: .line 2965
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            ifnull 2
         1: .line 2966
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            new org.graalvm.compiler.asm.aarch64.AArch64Assembler$OperandDataAnnotation
            dup
            iload 1 /* pos */
            aload 2 /* instruction */
            iload 3 /* operandSizeBits */
            iload 4 /* offsetBits */
            iload 5 /* shift */
            invokespecial org.graalvm.compiler.asm.aarch64.AArch64Assembler$OperandDataAnnotation.<init>:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         2: .line 2968
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int shift
        end local 4 // int offsetBits
        end local 3 // int operandSizeBits
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instruction
        end local 1 // int pos
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    3     1              pos  I
            0    3     2      instruction  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    3     3  operandSizeBits  I
            0    3     4       offsetBits  I
            0    3     5            shift  I
    MethodParameters:
                 Name  Flags
      pos              
      instruction      
      operandSizeBits  
      offsetBits       
      shift            

  void annotatePatchingImmediateNativeAddress(int, int, int);
    descriptor: (III)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int pos
        start local 2 // int operandSizeBits
        start local 3 // int numInstrs
         0: .line 2971
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            ifnull 2
         1: .line 2972
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            new org.graalvm.compiler.asm.aarch64.AArch64Assembler$MovSequenceAnnotation
            dup
            iload 1 /* pos */
            iload 2 /* operandSizeBits */
            iload 3 /* numInstrs */
            invokespecial org.graalvm.compiler.asm.aarch64.AArch64Assembler$MovSequenceAnnotation.<init>:(III)V
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         2: .line 2974
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int numInstrs
        end local 2 // int operandSizeBits
        end local 1 // int pos
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    3     1              pos  I
            0    3     2  operandSizeBits  I
            0    3     3        numInstrs  I
    MethodParameters:
                 Name  Flags
      pos              
      operandSizeBits  
      numInstrs        

  public void cnt(int, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // jdk.vm.ci.code.Register src
         0: .line 3018
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            bipush 64
            iload 1 /* size */
            if_icmpeq 1
            sipush 128
            iload 1 /* size */
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            ldc "Invalid size for cnt"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 3019
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            bipush 7
            ishr
            bipush 30
            ishl
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.CNT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 3 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         2: .line 3020
            return
        end local 3 // jdk.vm.ci.code.Register src
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    3     1  size  I
            0    3     2   dst  Ljdk/vm/ci/code/Register;
            0    3     3   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      size  
      dst   
      src   

  public void addv(int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register);
    descriptor: (ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SIMDElementSize;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize laneWidth
        start local 3 // jdk.vm.ci.code.Register dst
        start local 4 // jdk.vm.ci.code.Register src
         0: .line 3031
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            bipush 64
            iload 1 /* size */
            if_icmpeq 1
            sipush 128
            iload 1 /* size */
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            ldc "Invalid size for addv"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 3032
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 2
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize.DoubleWord:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SIMDElementSize;
            aload 2 /* laneWidth */
            if_acmpne 2
            new java.lang.AssertionError
            dup
            ldc "Invalid lane width for addv"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 3033
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 3
            bipush 64
            iload 1 /* size */
            if_icmpne 3
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize.Word:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SIMDElementSize;
            aload 2 /* laneWidth */
            if_acmpne 3
            new java.lang.AssertionError
            dup
            ldc "Invalid size and lane combination for addv"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 3034
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            bipush 7
            ishr
            bipush 30
            ishl
            aload 2 /* laneWidth */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize.encoding:I
            bipush 22
            ishl
            ior
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.ADDV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 3 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 3035
            return
        end local 4 // jdk.vm.ci.code.Register src
        end local 3 // jdk.vm.ci.code.Register dst
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize laneWidth
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1       size  I
            0    5     2  laneWidth  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$SIMDElementSize;
            0    5     3        dst  Ljdk/vm/ci/code/Register;
            0    5     4        src  Ljdk/vm/ci/code/Register;
    MethodParameters:
           Name  Flags
      size       
      laneWidth  
      dst        
      src        

  public void umov(int, jdk.vm.ci.code.Register, int, jdk.vm.ci.code.Register);
    descriptor: (ILjdk/vm/ci/code/Register;ILjdk/vm/ci/code/Register;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // jdk.vm.ci.code.Register dst
        start local 3 // int srcIdx
        start local 4 // jdk.vm.ci.code.Register src
         0: .line 3046
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 1
            iload 3 /* srcIdx */
            iconst_1
            iadd
            iload 1 /* size */
            imul
            sipush 128
            if_icmple 1
            new java.lang.AssertionError
            dup
            ldc "Invalid src vectRegister index"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 3047
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.simdFromSize:(I)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            astore 5 /* simdDataType */
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType simdDataType
         2: .line 3048
            aload 5 /* simdDataType */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            iload 3 /* srcIdx */
            aload 5 /* simdDataType */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            invokestatic java.lang.Integer.numberOfTrailingZeros:(I)I
            iconst_1
            iadd
            ishl
            ior
            istore 6 /* imm5 */
        start local 6 // int imm5
         3: .line 3049
            aload 0 /* this */
            iload 1 /* size */
            bipush 6
            ishr
            bipush 30
            ishl
            iload 6 /* imm5 */
            bipush 16
            ishl
            ior
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.UMOV:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            aload 2 /* dst */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rd:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 4 /* src */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rs1:(Ljdk/vm/ci/code/Register;)I
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         4: .line 3050
            return
        end local 6 // int imm5
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType simdDataType
        end local 4 // jdk.vm.ci.code.Register src
        end local 3 // int srcIdx
        end local 2 // jdk.vm.ci.code.Register dst
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    5     1          size  I
            0    5     2           dst  Ljdk/vm/ci/code/Register;
            0    5     3        srcIdx  I
            0    5     4           src  Ljdk/vm/ci/code/Register;
            2    5     5  simdDataType  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            3    5     6          imm5  I
    MethodParameters:
        Name  Flags
      size    
      dst     
      srcIdx  
      src     

  static int[] $SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 143
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.values:()[Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.BASE_REGISTER_ONLY:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.EXTENDED_REGISTER_OFFSET:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iconst_5
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_POST_INDEXED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            bipush 7
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_PRE_INDEXED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.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 org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_SCALED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iconst_1
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.IMMEDIATE_UNSCALED:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iconst_2
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.PC_LITERAL:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            bipush 6
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.REGISTER_OFFSET:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.ordinal:()I
            iconst_4
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            dup
            putstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode:[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
}
SourceFile: "AArch64Assembler.java"
NestMembers:
  org.graalvm.compiler.asm.aarch64.AArch64Assembler$BarrierKind  org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag  org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType  org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction  org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType  org.graalvm.compiler.asm.aarch64.AArch64Assembler$LogicalImmediateTable  org.graalvm.compiler.asm.aarch64.AArch64Assembler$LogicalImmediateTable$Immediate  org.graalvm.compiler.asm.aarch64.AArch64Assembler$LogicalImmediateTable$Representable  org.graalvm.compiler.asm.aarch64.AArch64Assembler$MovSequenceAnnotation  org.graalvm.compiler.asm.aarch64.AArch64Assembler$OperandDataAnnotation  org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode  org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize  org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType  org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemHint  org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister
InnerClasses:
  public final CPUFeature = jdk.vm.ci.aarch64.AArch64$CPUFeature of jdk.vm.ci.aarch64.AArch64
  public final Flag = jdk.vm.ci.aarch64.AArch64$Flag of jdk.vm.ci.aarch64.AArch64
  public RegisterCategory = jdk.vm.ci.code.Register$RegisterCategory of jdk.vm.ci.code.Register
  public final AddressingMode = org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode of org.graalvm.compiler.asm.aarch64.AArch64Address
  public final BarrierKind = org.graalvm.compiler.asm.aarch64.AArch64Assembler$BarrierKind of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final ConditionFlag = org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final ExtendType = org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final Instruction = org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  protected final InstructionType = org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public LogicalImmediateTable = org.graalvm.compiler.asm.aarch64.AArch64Assembler$LogicalImmediateTable of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public MovSequenceAnnotation = org.graalvm.compiler.asm.aarch64.AArch64Assembler$MovSequenceAnnotation of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public OperandDataAnnotation = org.graalvm.compiler.asm.aarch64.AArch64Assembler$OperandDataAnnotation of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final PrefetchMode = org.graalvm.compiler.asm.aarch64.AArch64Assembler$PrefetchMode of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final SIMDElementSize = org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final ShiftType = org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final SystemHint = org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemHint of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public final SystemRegister = org.graalvm.compiler.asm.aarch64.AArch64Assembler$SystemRegister of org.graalvm.compiler.asm.aarch64.AArch64Assembler