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 SignedMulLongOp;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -1692401664

  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 144
            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 544
            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 346
            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 350
            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 354
            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 358
            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 362
            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 366
            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 370
            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 374
            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 375
      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 868
            aload 0 /* this */
            aload 1 /* target */
            invokespecial org.graalvm.compiler.asm.Assembler.<init>:(Ljdk/vm/ci/code/TargetDescription;)V
         1: .line 869
            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 872
            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 876
            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 888
            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 889
            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 899
            iload 3 /* pos */
            iconst_m1
            if_icmpne 3
         1: .line 900
            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 901
            goto 4
         3: .line 902
      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 904
      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 914
            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 915
            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 926
            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 927
            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 937
            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 938
            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 949
            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 950
            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 960
            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 961
            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 971
            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 972
            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 983
            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 984
      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 985
      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 986
      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 988
      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 990
            iload 2 /* uimm6 */
            bipush 31
            iand
            istore 6 /* uimm5 */
        start local 6 // int uimm5
         8: .line 991
            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 992
            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 993
            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 994
            iload 4 /* pos */
            iconst_m1
            if_icmpne 14
        12: .line 995
            aload 0 /* this */
            iload 9 /* encoding */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        13: .line 996
            goto 15
        14: .line 997
      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 999
      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 1010
            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 1011
      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 1012
      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 1013
      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 1015
      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 1017
            iload 2 /* uimm6 */
            bipush 31
            iand
            istore 6 /* uimm5 */
        start local 6 // int uimm5
         8: .line 1018
            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 1019
            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 1020
            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 1021
            iload 4 /* pos */
            iconst_m1
            if_icmpne 14
        12: .line 1022
            aload 0 /* this */
            iload 9 /* encoding */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        13: .line 1023
            goto 15
        14: .line 1024
      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 1026
      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 1029
            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 1030
      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 1031
            iload 5 /* pos */
            iconst_m1
            if_icmpne 5
         3: .line 1032
            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 1033
            goto 6
         5: .line 1034
      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 1036
      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=7, locals=2, args_size=1
        start local 0 // int imm21
         0: .line 1039
            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 got value 0x%x"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 0 /* imm21 */
            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
         2: .line 1040
      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 1041
            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 1050
            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 1051
            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 1059
            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 1060
            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 1068
            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 1069
            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 1072
            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 1073
      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 1074
            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 1075
            iload 3 /* pos */
            iconst_m1
            if_icmpne 8
         5: .line 1076
            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 1077
            aload 0 /* this */
            iload 5 /* instrEncoding */
            iload 4 /* imm */
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
         7: .line 1078
            goto 10
         8: .line 1079
      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 1080
            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 1082
      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 1092
            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 1093
            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 1101
            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 1102
            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 1110
            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 1111
            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 1114
            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 1115
      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 1116
      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 1117
      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 1119
            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 1131
            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 1132
      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 1133
      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 1134
            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 1135
            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 1147
            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 1148
      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 1149
      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 1150
            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 1151
            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 1229
            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 1230
            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 1231
            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 1232
      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 1234
      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 1235
            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 1244
            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 1245
            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 1255
            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
            aload 2 /* rt */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1256
      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 1257
      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 1258
            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 1259
            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 1262
            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 1263
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 6 /* transferSizeEncoding */
        start local 6 // int transferSizeEncoding
         3: .line 1264
            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 1265
            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 1266
            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 1267
            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 1269
      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 1270
            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 1271
            goto 41
        14: .line 1273
      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 1274
            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 1275
            goto 41
        17: .line 1277
      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 1278
            goto 41
        19: .line 1281
      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 1282
            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 1283
            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 1284
            goto 41
        end local 11 // boolean shouldScale
        end local 10 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ExtendType extendType
        29: .line 1286
      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 1287
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            iconst_2
            isub
            bipush 30
            ishl
            istore 6 /* transferSizeEncoding */
        31: .line 1288
            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 1289
            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 1290
            goto 41
        34: .line 1292
      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 1293
            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 1294
            goto 41
        37: .line 1296
      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 1297
            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 1298
            goto 41
        40: .line 1300
      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 1302
      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  

  protected void insertLdpStp(int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, int, int);
    descriptor: (ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;II)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=11, args_size=8
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rt2
        start local 5 // jdk.vm.ci.code.Register base
        start local 6 // int offset
        start local 7 // int position
         0: .line 1308
            iload 1 /* 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
         1: .line 1309
            bipush 7
            iload 6 /* offset */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.maskField:(II)I
            istore 9 /* scaledOffset */
        start local 9 // int scaledOffset
         2: .line 1310
            aload 8 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 2 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 9 /* scaledOffset */
            bipush 15
            ishl
            ior
            aload 4 /* rt2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 5 /* base */
            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
            istore 10 /* memop */
        start local 10 // int memop
         3: .line 1311
            aload 0 /* this */
            iload 10 /* memop */
            ldc 671088640
            ior
            ldc 16777216
            ior
            iload 7 /* position */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(II)V
         4: .line 1312
            return
        end local 10 // int memop
        end local 9 // int scaledOffset
        end local 8 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 7 // int position
        end local 6 // int offset
        end local 5 // jdk.vm.ci.code.Register base
        end local 4 // jdk.vm.ci.code.Register rt2
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        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         instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0    5     3            rt  Ljdk/vm/ci/code/Register;
            0    5     4           rt2  Ljdk/vm/ci/code/Register;
            0    5     5          base  Ljdk/vm/ci/code/Register;
            0    5     6        offset  I
            0    5     7      position  I
            1    5     8          type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            2    5     9  scaledOffset  I
            3    5    10         memop  I
    MethodParameters:
          Name  Flags
      size      
      instr     
      rt        
      rt2       
      base      
      offset    
      position  

  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 1320
            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 1321
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            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 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStorePairInstruction:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         2: .line 1322
            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 1330
            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 1331
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            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 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.loadStorePairInstruction:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
         2: .line 1332
            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(int, org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction, jdk.vm.ci.code.Register, jdk.vm.ci.code.Register, org.graalvm.compiler.asm.aarch64.AArch64Address);
    descriptor: (ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;Ljdk/vm/ci/code/Register;Ljdk/vm/ci/code/Register;Lorg/graalvm/compiler/asm/aarch64/AArch64Address;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=6
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int size
        start local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        start local 3 // jdk.vm.ci.code.Register rt
        start local 4 // jdk.vm.ci.code.Register rt2
        start local 5 // org.graalvm.compiler.asm.aarch64.AArch64Address address
         0: .line 1335
            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
         1: .line 1337
            aload 5 /* address */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Address.getImmediateRaw:()I
            istore 7 /* offset */
        start local 7 // int offset
         2: .line 1338
            aload 5 /* 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_acmpne 7
         3: .line 1339
            iload 1 /* size */
            bipush 8
            idiv
            istore 8 /* sizeInBytes */
        start local 8 // int sizeInBytes
         4: .line 1340
            iload 8 /* sizeInBytes */
            iconst_1
            isub
            i2l
            lstore 9 /* mask */
        start local 9 // long mask
         5: .line 1341
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$assertionsDisabled:Z
            ifne 6
            iload 7 /* offset */
            i2l
            lload 9 /* mask */
            land
            lconst_0
            lcmp
            ifeq 6
            new java.lang.AssertionError
            dup
            ldc "LDP/STP only supports aligned offset."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 1342
      StackMap locals: org.graalvm.compiler.asm.aarch64.AArch64Assembler int 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 int int long
      StackMap stack:
            iload 7 /* offset */
            iload 8 /* sizeInBytes */
            idiv
            istore 7 /* offset */
        end local 9 // long mask
        end local 8 // int sizeInBytes
         7: .line 1344
      StackMap locals:
      StackMap stack:
            bipush 7
            iload 7 /* offset */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.maskField:(II)I
            istore 8 /* scaledOffset */
        start local 8 // int scaledOffset
         8: .line 1345
            aload 6 /* type */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.encoding:I
            aload 2 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ior
            iload 8 /* scaledOffset */
            bipush 15
            ishl
            ior
            aload 4 /* rt2 */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt2:(Ljdk/vm/ci/code/Register;)I
            ior
            aload 5 /* 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 3 /* rt */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.rt:(Ljdk/vm/ci/code/Register;)I
            ior
            istore 9 /* memop */
        start local 9 // int memop
         9: .line 1346
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.$SWITCH_TABLE$org$graalvm$compiler$asm$aarch64$AArch64Address$AddressingMode:()[I
            aload 5 /* 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: 10
                    2: 10
                    3: 16
                    4: 16
                    5: 16
                    6: 16
                    7: 12
                    8: 14
              default: 16
          }
        10: .line 1349
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 9 /* memop */
            ldc 671088640
            ior
            ldc 16777216
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        11: .line 1350
            goto 17
        12: .line 1352
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 9 /* memop */
            ldc 671088640
            ior
            ldc 8388608
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        13: .line 1353
            goto 17
        14: .line 1355
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 9 /* memop */
            ldc 671088640
            ior
            ldc 25165824
            ior
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.emitInt:(I)V
        15: .line 1356
            goto 17
        16: .line 1358
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Unhandled addressing mode: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* 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
        17: .line 1360
      StackMap locals:
      StackMap stack:
            return
        end local 9 // int memop
        end local 8 // int scaledOffset
        end local 7 // int offset
        end local 6 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType type
        end local 5 // org.graalvm.compiler.asm.aarch64.AArch64Address address
        end local 4 // jdk.vm.ci.code.Register rt2
        end local 3 // jdk.vm.ci.code.Register rt
        end local 2 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction instr
        end local 1 // int size
        end local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0          this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0   18     1          size  I
            0   18     2         instr  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            0   18     3            rt  Ljdk/vm/ci/code/Register;
            0   18     4           rt2  Ljdk/vm/ci/code/Register;
            0   18     5       address  Lorg/graalvm/compiler/asm/aarch64/AArch64Address;
            1   18     6          type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            2   18     7        offset  I
            4    7     8   sizeInBytes  I
            5    7     9          mask  J
            8   18     8  scaledOffset  I
            9   18     9         memop  I
    MethodParameters:
         Name  Flags
      size     
      instr    
      rt       
      rt2      
      address  

  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 1372
            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 1373
      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 1374
            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 1375
            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 1388
            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 1389
      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 1390
            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 1391
            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 1404
            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 1405
      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 1406
            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 1407
            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 1417
            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 1418
      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 1420
            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 1421
            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 1432
            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 1433
      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 1434
            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 1435
            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 1448
            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 1449
      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 1450
            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 1451
            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 1454
            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 1455
      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 1456
      StackMap locals:
      StackMap stack:
            iload 4 /* log2TransferSize */
            bipush 30
            ishl
            istore 5 /* transferSizeEncoding */
        start local 5 // int transferSizeEncoding
         4: .line 1457
            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 1458
            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 1471
            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 1472
      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 1473
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 6 /* transferSizeEncoding */
        start local 6 // int transferSizeEncoding
         5: .line 1474
            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 1475
            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 1490
            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 1491
      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 1492
            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 1493
            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 1496
            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 1497
      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 1498
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 8 /* transferSizeEncoding */
        start local 8 // int transferSizeEncoding
         5: .line 1499
            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 1500
            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 1515
            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 1516
      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 1517
            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 1518
            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 1521
            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 1522
      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 1523
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 8 /* transferSizeEncoding */
        start local 8 // int transferSizeEncoding
         5: .line 1524
            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 1525
            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 1539
            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 1540
      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 1541
            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 1542
            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 1545
            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 1546
      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 1547
      StackMap locals:
      StackMap stack:
            iload 5 /* log2TransferSize */
            bipush 30
            ishl
            istore 8 /* transferSizeEncoding */
        start local 8 // int transferSizeEncoding
         5: .line 1548
            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 1549
            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 1561
            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 1562
            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 1571
            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 1572
            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 1582
            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 1583
            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 1586
            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 1587
      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 1589
            iload 1 /* imm */
            iconst_2
            ishr
            iconst_5
            ishl
            istore 2 /* immHi */
        start local 2 // int immHi
         3: .line 1591
            iload 1 /* imm */
            iconst_3
            iand
            bipush 29
            ishl
            istore 3 /* immLo */
        start local 3 // int immLo
         4: .line 1592
            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 1607
            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 1608
      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 1609
      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 1610
            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 1622
            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 1623
      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 1624
      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 1625
            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 1637
            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 1638
      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 1639
      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 1640
            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 1652
            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 1653
      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 1654
      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 1655
            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 1658
            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 1659
            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 1662
            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 1663
            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 1673
            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 1674
      StackMap locals:
      StackMap stack:
            bipush 12
            iload 0 /* imm */
            invokestatic org.graalvm.compiler.core.common.NumUtil.isUnsignedNbit:(II)Z
            ifeq 3
         2: .line 1675
            iload 0 /* imm */
            bipush 10
            ishl
            ireturn
         3: .line 1679
      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 1691
            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 1705
            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 1706
      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 1707
      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 1708
            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 1719
            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 1720
      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 1721
      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 1722
            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 1733
            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 1734
      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 1735
      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 1736
            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 1747
            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 1748
      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 1749
      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 1750
            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 1755
            aload 6 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.General32:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 4
         1: .line 1756
            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 1757
      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 1758
            goto 5
        end local 7 // long bimmValue
         4: .line 1759
      StackMap locals:
      StackMap stack:
            lload 4 /* bimm */
            lstore 7 /* bimmValue */
        start local 7 // long bimmValue
         5: .line 1761
      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 1762
            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 1763
            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 1777
            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 1778
            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 1790
            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 1791
            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 1803
            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 1804
            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 1807
            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 1808
      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 1809
      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 1810
      StackMap locals:
      StackMap stack:
            iload 4 /* shiftAmt */
            iconst_4
            ishr
            istore 6 /* shiftValue */
        start local 6 // int shiftValue
         5: .line 1811
            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 1812
            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 1826
            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 1827
            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 1839
            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 1840
            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 1852
            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 1853
            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 1856
            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 1857
      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 1858
      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 1859
      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 1860
            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 1861
            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 1875
            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 1876
      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 1877
      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 1878
      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 1879
            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 1880
      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 1881
            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 1882
            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 1897
            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 1898
            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 1911
            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 1912
            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 1925
            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 1926
            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 1939
            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 1940
            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 1943
            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 1944
      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 1945
      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 1946
            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 1960
            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 1961
      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 1962
      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 1963
      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 1964
            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 1977
            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 1978
      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 1979
      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 1980
      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 1981
            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 1994
            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 1995
      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 1996
      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 1997
      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 1998
            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 2011
            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 2012
      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 2013
      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 2014
      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 2015
            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 2018
            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 2019
      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 2020
            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 2034
            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 2035
            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 2048
            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 2049
            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 2062
            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 2063
            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 2076
            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 2077
            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 2090
            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 2091
            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 2104
            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 2105
            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 2118
            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 2119
            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 2132
            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 2133
            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 2136
            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 2137
      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 2138
      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 2139
      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 2140
      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 2141
            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 2153
            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 2154
            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 2165
            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 2166
            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 2177
            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 2178
            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 2189
            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 2190
            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 2204
            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 2205
            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 2215
            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 2216
            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 2226
            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 2227
            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 2237
            iload 1 /* size */
            bipush 64
            if_icmpne 3
         1: .line 2238
            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 2239
            goto 5
         3: .line 2240
      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 2241
      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 2243
      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 2257
            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 2258
            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 2270
            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 2271
            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 2283
            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 2284
            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 2287
            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 2288
      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 2289
      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 2290
      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 2291
            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 2305
            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 2306
            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 2318
            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 2319
            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 2329
            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 2330
      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 2331
      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 2332
      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 2333
            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 2343
            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 2344
      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 2345
      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 2346
      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 2347
            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 2358
            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 2359
      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 2360
      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 2361
      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 2362
      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 2363
            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=6, 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 2374
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MADD:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 1 /* dst */
            aload 2 /* src1 */
            aload 3 /* src2 */
            aload 4 /* src3 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.smullInstruction:(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;)V
         1: .line 2375
            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    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   dst  Ljdk/vm/ci/code/Register;
            0    2     2  src1  Ljdk/vm/ci/code/Register;
            0    2     3  src2  Ljdk/vm/ci/code/Register;
            0    2     4  src3  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      dst   
      src1  
      src2  
      src3  

  public void smsubl(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=6, 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 2386
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.MSUB:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            aload 1 /* dst */
            aload 2 /* src1 */
            aload 3 /* src2 */
            aload 4 /* src3 */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler.smullInstruction:(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;)V
         1: .line 2387
            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    2     0  this  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler;
            0    2     1   dst  Ljdk/vm/ci/code/Register;
            0    2     2  src1  Ljdk/vm/ci/code/Register;
            0    2     3  src2  Ljdk/vm/ci/code/Register;
            0    2     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 2390
            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 2391
      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 2392
      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 2393
      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 2394
      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 2395
            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   

  private void smullInstruction(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);
    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;)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 // jdk.vm.ci.code.Register src3
         0: .line 2398
            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 2399
      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 2400
      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 2401
      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 2402
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* instr */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            ldc -1692401664
            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 2403
            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 // 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;
    MethodParameters:
       Name  Flags
      instr  
      dst    
      src1   
      src2   
      src3   

  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 2414
            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 2415
            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 2426
            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 2427
            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 2430
            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 2431
            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 2434
            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 2435
      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 2436
      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 2437
      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 2438
            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 2451
            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 2452
      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 2453
      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 2454
            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 2455
            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 2465
            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 2466
      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 2467
      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 2468
            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 2469
            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 2481
            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 2482
            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 2492
            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 2493
      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 2494
      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 2495
            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 2505
            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 2506
      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 2507
      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 2508
            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 2511
            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 2512
            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 2513
            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 2528
            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 2529
      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 2531
            aload 5 /* type */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$InstructionType.FP64:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$InstructionType;
            if_acmpne 5
         3: .line 2532
            dload 3 /* imm */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64Assembler.getDoubleImmediate:(D)I
            istore 6 /* immEncoding */
        start local 6 // int immEncoding
         4: .line 2533
            goto 7
        end local 6 // int immEncoding
         5: .line 2534
      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 2535
      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 2537
      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 2538
            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 2541
            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 2544
      StackMap locals:
      StackMap stack:
            dload 0 /* imm */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* repr */
        start local 2 // long repr
         2: .line 2545
            lload 2 /* repr */
            bipush 63
            lushr
            l2i
            bipush 7
            ishl
            istore 4 /* a */
        start local 4 // int a
         3: .line 2546
            lload 2 /* repr */
            bipush 61
            lushr
            lconst_1
            land
            l2i
            bipush 6
            ishl
            istore 5 /* b */
        start local 5 // int b
         4: .line 2547
            lload 2 /* repr */
            bipush 48
            lushr
            l2i
            bipush 63
            iand
            istore 6 /* cToH */
        start local 6 // int cToH
         5: .line 2548
            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 2555
            dload 0 /* imm */
            invokestatic java.lang.Double.doubleToRawLongBits:(D)J
            lstore 2 /* bits */
        start local 2 // long bits
         1: .line 2557
            lload 2 /* bits */
            bipush 48
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            land
            lconst_0
            lcmp
            ifeq 3
         2: .line 2558
            iconst_0
            ireturn
         3: .line 2561
      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 2562
            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 2563
            iconst_0
            ireturn
         6: .line 2566
      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 2567
            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 2571
            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 2573
      StackMap locals:
      StackMap stack:
            fload 0 /* imm */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* repr */
        start local 1 // int repr
         2: .line 2574
            iload 1 /* repr */
            bipush 31
            iushr
            bipush 7
            ishl
            istore 2 /* a */
        start local 2 // int a
         3: .line 2575
            iload 1 /* repr */
            bipush 29
            iushr
            iconst_1
            iand
            bipush 6
            ishl
            istore 3 /* b */
        start local 3 // int b
         4: .line 2576
            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 2577
            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 2583
            fload 0 /* imm */
            invokestatic java.lang.Float.floatToRawIntBits:(F)I
            istore 1 /* bits */
        start local 1 // int bits
         1: .line 2585
            iload 1 /* bits */
            bipush 19
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberInt:(I)I
            iand
            ifeq 3
         2: .line 2586
            iconst_0
            ireturn
         3: .line 2589
      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 2590
            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 2591
            iconst_0
            ireturn
         6: .line 2594
      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 2608
            iload 1 /* srcSize */
            bipush 32
            if_icmpne 3
         1: .line 2609
            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 2610
            goto 4
         3: .line 2611
      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 2613
      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 2626
            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 2627
      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 2628
      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 2629
            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 2641
            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 2642
      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 2643
      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 2644
            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 2647
            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 2648
            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 2660
            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 2661
            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 2671
            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 2672
            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 2682
            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 2683
            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 2693
            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 2694
            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 2706
            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 2707
            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 2717
            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 2718
            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 2728
            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 2729
            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 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 /* 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 2734
      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 2735
            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 2748
            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 2749
            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 2760
            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 2761
            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 2772
            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 2773
            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 2784
            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 2785
            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 2788
            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 2789
      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 2790
      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 2791
      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 2792
            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 2806
            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 2807
            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 2819
            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 2820
            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 2823
            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 2824
      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 2825
      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 2826
      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 2827
      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 2828
            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 2840
            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 2841
      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 2842
      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 2843
            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 2844
            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 2854
            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 2855
      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 2856
      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 2857
            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 2858
            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 2870
            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 2871
      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 2872
      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 2873
      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 2874
            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 2875
            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 2884
            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 2885
      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 2886
            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 2887
            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 2896
            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 2897
      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 2898
            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 2899
            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 2913
            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 2914
      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 2915
      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 2916
      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 2917
            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 2918
            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 2929
            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 2930
            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 2939
            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 2940
            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 2943
            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 2944
      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 2945
            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 2970
            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 2971
            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 2978
            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 2979
            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 3009
            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 3010
            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 3013
            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 3014
            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 3017
            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 3018
            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 dc(org.graalvm.compiler.asm.aarch64.AArch64Assembler$DataCacheOperationType, jdk.vm.ci.code.Register);
    descriptor: (Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$DataCacheOperationType;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$DataCacheOperationType type
        start local 2 // jdk.vm.ci.code.Register src
         0: .line 3021
            aload 0 /* this */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.DC:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler$Instruction.encoding:I
            aload 1 /* type */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler$DataCacheOperationType.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 3022
            return
        end local 2 // jdk.vm.ci.code.Register src
        end local 1 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$DataCacheOperationType type
        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  type  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$DataCacheOperationType;
            0    2     2   src  Ljdk/vm/ci/code/Register;
    MethodParameters:
      Name  Flags
      type  
      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 3025
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            ifnull 2
         1: .line 3026
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            new org.graalvm.compiler.asm.aarch64.AArch64Assembler$SingleInstructionAnnotation
            dup
            iload 1 /* pos */
            aload 2 /* instruction */
            iload 3 /* operandSizeBits */
            iload 4 /* offsetBits */
            iload 5 /* shift */
            invokespecial org.graalvm.compiler.asm.aarch64.AArch64Assembler$SingleInstructionAnnotation.<init>:(ILorg/graalvm/compiler/asm/aarch64/AArch64Assembler$Instruction;III)V
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         2: .line 3028
      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 annotateImmediateMovSequence(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.asm.aarch64.AArch64Assembler this
        start local 1 // int pos
        start local 2 // int numInstrs
         0: .line 3031
            aload 0 /* this */
            getfield org.graalvm.compiler.asm.aarch64.AArch64Assembler.codePatchingAnnotationConsumer:Ljava/util/function/Consumer;
            ifnull 2
         1: .line 3032
            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 /* numInstrs */
            invokespecial org.graalvm.compiler.asm.aarch64.AArch64Assembler$MovSequenceAnnotation.<init>:(II)V
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
         2: .line 3034
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int numInstrs
        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  numInstrs  I
    MethodParameters:
           Name  Flags
      pos        
      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 3076
            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 3077
      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 3078
            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 3089
            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 3090
      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 3091
      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 3092
      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 3093
            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 3104
            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 3105
      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 3106
            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 3107
            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 3108
            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 144
            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$DataCacheOperationType  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$PrefetchMode  org.graalvm.compiler.asm.aarch64.AArch64Assembler$SIMDElementSize  org.graalvm.compiler.asm.aarch64.AArch64Assembler$ShiftType  org.graalvm.compiler.asm.aarch64.AArch64Assembler$SingleInstructionAnnotation  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 DataCacheOperationType = org.graalvm.compiler.asm.aarch64.AArch64Assembler$DataCacheOperationType 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 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 SingleInstructionAnnotation = org.graalvm.compiler.asm.aarch64.AArch64Assembler$SingleInstructionAnnotation 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