public abstract class org.graalvm.compiler.core.aarch64.AArch64LIRGenerator extends org.graalvm.compiler.lir.gen.LIRGenerator
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator
  super_class: org.graalvm.compiler.lir.gen.LIRGenerator
{
  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$core$common$calc$Condition;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind;
    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 87
            ldc Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            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.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.core.common.spi.LIRKindTool, org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator, org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory, org.graalvm.compiler.phases.util.Providers, org.graalvm.compiler.lir.gen.LIRGenerationResult);
    descriptor: (Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.spi.LIRKindTool lirKindTool
        start local 2 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithmeticLIRGen
        start local 3 // org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory moveFactory
        start local 4 // org.graalvm.compiler.phases.util.Providers providers
        start local 5 // org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes
         0: .line 90
            aload 0 /* this */
            aload 1 /* lirKindTool */
            aload 2 /* arithmeticLIRGen */
            aload 3 /* moveFactory */
            aload 4 /* providers */
            aload 5 /* lirGenRes */
            invokespecial org.graalvm.compiler.lir.gen.LIRGenerator.<init>:(Lorg/graalvm/compiler/core/common/spi/LIRKindTool;Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;Lorg/graalvm/compiler/core/common/spi/CodeGenProviders;Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;)V
         1: .line 91
            return
        end local 5 // org.graalvm.compiler.lir.gen.LIRGenerationResult lirGenRes
        end local 4 // org.graalvm.compiler.phases.util.Providers providers
        end local 3 // org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory moveFactory
        end local 2 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithmeticLIRGen
        end local 1 // org.graalvm.compiler.core.common.spi.LIRKindTool lirKindTool
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    2     1       lirKindTool  Lorg/graalvm/compiler/core/common/spi/LIRKindTool;
            0    2     2  arithmeticLIRGen  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     3       moveFactory  Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool$MoveFactory;
            0    2     4         providers  Lorg/graalvm/compiler/phases/util/Providers;
            0    2     5         lirGenRes  Lorg/graalvm/compiler/lir/gen/LIRGenerationResult;
    MethodParameters:
                  Name  Flags
      lirKindTool       
      arithmeticLIRGen  
      moveFactory       
      providers         
      lirGenRes         

  protected static final boolean canStoreConstant(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Z
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaConstant c
         0: .line 105
            iconst_1
            ireturn
        end local 0 // jdk.vm.ci.meta.JavaConstant c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
      Name  Flags
      c     

  public jdk.vm.ci.meta.AllocatableValue moveSp(jdk.vm.ci.meta.AllocatableValue);
    descriptor: (Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.AllocatableValue val
         0: .line 113
            aload 1 /* val */
            instanceof jdk.vm.ci.code.RegisterValue
            ifeq 3
            aload 1 /* val */
            checkcast jdk.vm.ci.code.RegisterValue
            invokevirtual jdk.vm.ci.code.RegisterValue.getRegister:()Ljdk/vm/ci/code/Register;
            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
         1: .line 114
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 2
            aload 1 /* val */
            invokevirtual jdk.vm.ci.meta.AllocatableValue.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 2
            new java.lang.AssertionError
            dup
            ldc "Stackpointer must be long"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 115
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* val */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
         3: .line 117
      StackMap locals:
      StackMap stack:
            aload 1 /* val */
            areturn
        end local 1 // jdk.vm.ci.meta.AllocatableValue val
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    4     1   val  Ljdk/vm/ci/meta/AllocatableValue;
    MethodParameters:
      Name  Flags
      val   

  public <K extends jdk.vm.ci.meta.ValueKind<K>> K toRegisterKind();
    descriptor: (Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/meta/ValueKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.ValueKind kind
         0: .line 125
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind:()[I
            aload 1 /* kind */
            invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iaload
            tableswitch { // 1 - 2
                    1: 1
                    2: 1
              default: 2
          }
         1: .line 128
      StackMap locals:
      StackMap stack:
            aload 1 /* kind */
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.meta.ValueKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Ljdk/vm/ci/meta/ValueKind;
            areturn
         2: .line 130
      StackMap locals:
      StackMap stack:
            aload 1 /* kind */
            areturn
        end local 1 // jdk.vm.ci.meta.ValueKind kind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1  kind  TK;
    Signature: <K:Ljdk/vm/ci/meta/ValueKind<TK;>;>(TK;)TK;
    MethodParameters:
      Name  Flags
      kind  

  public void emitNullCheck(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
        start local 2 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 136
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp
            dup
            aload 0 /* this */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
            aload 2 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         1: .line 137
            return
        end local 2 // org.graalvm.compiler.lir.LIRFrameState state
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    2     1  address  Ljdk/vm/ci/meta/Value;
            0    2     2    state  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
         Name  Flags
      address  
      state    

  public org.graalvm.compiler.lir.Variable emitAddress(jdk.vm.ci.meta.AllocatableValue);
    descriptor: (Ljdk/vm/ci/meta/AllocatableValue;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.AllocatableValue stackslot
         0: .line 141
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 2 /* result */
        start local 2 // org.graalvm.compiler.lir.Variable result
         1: .line 142
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64Move$StackLoadAddressOp
            dup
            aload 2 /* result */
            aload 1 /* stackslot */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$StackLoadAddressOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         2: .line 143
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.lir.Variable result
        end local 1 // jdk.vm.ci.meta.AllocatableValue stackslot
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1  stackslot  Ljdk/vm/ci/meta/AllocatableValue;
            1    3     2     result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
           Name  Flags
      stackslot  

  public org.graalvm.compiler.lir.aarch64.AArch64AddressValue asAddressValue(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
         0: .line 147
            aload 1 /* address */
            instanceof org.graalvm.compiler.lir.aarch64.AArch64AddressValue
            ifeq 2
         1: .line 148
            aload 1 /* address */
            checkcast org.graalvm.compiler.lir.aarch64.AArch64AddressValue
            areturn
         2: .line 150
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.lir.aarch64.AArch64AddressValue
            dup
            aload 1 /* address */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            aload 0 /* this */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            getstatic jdk.vm.ci.meta.Value.ILLEGAL:Ljdk/vm/ci/meta/AllocatableValue;
            iconst_0
            iconst_1
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode.BASE_REGISTER_ONLY:Lorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64AddressValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;IILorg/graalvm/compiler/asm/aarch64/AArch64Address$AddressingMode;)V
            areturn
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1  address  Ljdk/vm/ci/meta/Value;
    MethodParameters:
         Name  Flags
      address  

  public org.graalvm.compiler.lir.Variable emitLogicCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=8
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind accessKind
        start local 2 // jdk.vm.ci.meta.Value address
        start local 3 // jdk.vm.ci.meta.Value expectedValue
        start local 4 // jdk.vm.ci.meta.Value newValue
        start local 5 // jdk.vm.ci.meta.Value trueValue
        start local 6 // jdk.vm.ci.meta.Value falseValue
        start local 7 // boolean useBarriers
         0: .line 156
            aload 0 /* this */
            aload 2 /* address */
            aload 3 /* expectedValue */
            aload 4 /* newValue */
            iload 7 /* useBarriers */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitCompareAndSwap:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
            pop
         1: .line 157
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 2
            aload 5 /* trueValue */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            aload 6 /* falseValue */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 158
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 4
            aload 5 /* trueValue */
            lconst_1
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 3
            aload 6 /* falseValue */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifne 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 159
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* trueValue */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 8 /* result */
        start local 8 // org.graalvm.compiler.lir.Variable result
         5: .line 160
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp
            dup
            aload 8 /* result */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.EQ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         6: .line 161
            aload 8 /* result */
            areturn
        end local 8 // org.graalvm.compiler.lir.Variable result
        end local 7 // boolean useBarriers
        end local 6 // jdk.vm.ci.meta.Value falseValue
        end local 5 // jdk.vm.ci.meta.Value trueValue
        end local 4 // jdk.vm.ci.meta.Value newValue
        end local 3 // jdk.vm.ci.meta.Value expectedValue
        end local 2 // jdk.vm.ci.meta.Value address
        end local 1 // org.graalvm.compiler.core.common.LIRKind accessKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0           this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    7     1     accessKind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    7     2        address  Ljdk/vm/ci/meta/Value;
            0    7     3  expectedValue  Ljdk/vm/ci/meta/Value;
            0    7     4       newValue  Ljdk/vm/ci/meta/Value;
            0    7     5      trueValue  Ljdk/vm/ci/meta/Value;
            0    7     6     falseValue  Ljdk/vm/ci/meta/Value;
            0    7     7    useBarriers  Z
            5    7     8         result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
               Name  Flags
      accessKind     
      address        
      expectedValue  
      newValue       
      trueValue      
      falseValue     
      useBarriers    

  public org.graalvm.compiler.lir.Variable emitValueCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind accessKind
        start local 2 // jdk.vm.ci.meta.Value address
        start local 3 // jdk.vm.ci.meta.Value expectedValue
        start local 4 // jdk.vm.ci.meta.Value newValue
        start local 5 // boolean useBarriers
         0: .line 166
            aload 0 /* this */
            aload 2 /* address */
            aload 3 /* expectedValue */
            aload 4 /* newValue */
            iload 5 /* useBarriers */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitCompareAndSwap:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 5 // boolean useBarriers
        end local 4 // jdk.vm.ci.meta.Value newValue
        end local 3 // jdk.vm.ci.meta.Value expectedValue
        end local 2 // jdk.vm.ci.meta.Value address
        end local 1 // org.graalvm.compiler.core.common.LIRKind accessKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    1     1     accessKind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    1     2        address  Ljdk/vm/ci/meta/Value;
            0    1     3  expectedValue  Ljdk/vm/ci/meta/Value;
            0    1     4       newValue  Ljdk/vm/ci/meta/Value;
            0    1     5    useBarriers  Z
    MethodParameters:
               Name  Flags
      accessKind     
      address        
      expectedValue  
      newValue       
      useBarriers    

  private org.graalvm.compiler.lir.Variable emitCompareAndSwap(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=7, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
        start local 2 // jdk.vm.ci.meta.Value expectedValue
        start local 3 // jdk.vm.ci.meta.Value newValue
        start local 4 // boolean useBarriers
         0: .line 170
            aload 0 /* this */
            aload 2 /* expectedValue */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 5 /* result */
        start local 5 // org.graalvm.compiler.lir.Variable result
         1: .line 171
            aload 0 /* this */
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 6 /* scratch */
        start local 6 // org.graalvm.compiler.lir.Variable scratch
         2: .line 172
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$CompareAndSwapOp
            dup
            aload 5 /* result */
            aload 0 /* this */
            aload 2 /* expectedValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 3 /* newValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 6 /* scratch */
            iload 4 /* useBarriers */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$CompareAndSwapOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Z)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         3: .line 173
            aload 5 /* result */
            areturn
        end local 6 // org.graalvm.compiler.lir.Variable scratch
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // boolean useBarriers
        end local 3 // jdk.vm.ci.meta.Value newValue
        end local 2 // jdk.vm.ci.meta.Value expectedValue
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    4     1        address  Ljdk/vm/ci/meta/Value;
            0    4     2  expectedValue  Ljdk/vm/ci/meta/Value;
            0    4     3       newValue  Ljdk/vm/ci/meta/Value;
            0    4     4    useBarriers  Z
            1    4     5         result  Lorg/graalvm/compiler/lir/Variable;
            2    4     6        scratch  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
               Name  Flags
      address        
      expectedValue  
      newValue       
      useBarriers    

  public jdk.vm.ci.meta.Value emitAtomicReadAndWrite(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
        start local 2 // jdk.vm.ci.meta.ValueKind kind
        start local 3 // jdk.vm.ci.meta.Value newValue
         0: .line 178
            aload 0 /* this */
            aload 2 /* kind */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 4 /* result */
        start local 4 // org.graalvm.compiler.lir.Variable result
         1: .line 179
            aload 0 /* this */
            aload 2 /* kind */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 5 /* scratch */
        start local 5 // org.graalvm.compiler.lir.Variable scratch
         2: .line 180
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndWriteOp
            dup
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 3 /* newValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 5 /* scratch */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndWriteOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         3: .line 181
            aload 4 /* result */
            areturn
        end local 5 // org.graalvm.compiler.lir.Variable scratch
        end local 4 // org.graalvm.compiler.lir.Variable result
        end local 3 // jdk.vm.ci.meta.Value newValue
        end local 2 // jdk.vm.ci.meta.ValueKind kind
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    4     1   address  Ljdk/vm/ci/meta/Value;
            0    4     2      kind  Ljdk/vm/ci/meta/ValueKind<*>;
            0    4     3  newValue  Ljdk/vm/ci/meta/Value;
            1    4     4    result  Lorg/graalvm/compiler/lir/Variable;
            2    4     5   scratch  Lorg/graalvm/compiler/lir/Variable;
    Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    MethodParameters:
          Name  Flags
      address   
      kind      
      newValue  

  public jdk.vm.ci.meta.Value emitAtomicReadAndAdd(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
        start local 2 // jdk.vm.ci.meta.ValueKind kind
        start local 3 // jdk.vm.ci.meta.Value delta
         0: .line 186
            aload 0 /* this */
            aload 2 /* kind */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 4 /* result */
        start local 4 // org.graalvm.compiler.lir.Variable result
         1: .line 187
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64LIRFlagsVersioned.useLSE:(Ljdk/vm/ci/code/Architecture;)Z
            ifeq 4
         2: .line 188
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndAddLSEOp
            dup
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 3 /* delta */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndAddLSEOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         3: .line 189
            goto 5
         4: .line 190
      StackMap locals: org.graalvm.compiler.lir.Variable
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndAddOp
            dup
            aload 2 /* kind */
            invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 3 /* delta */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndAddOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         5: .line 192
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 4 // org.graalvm.compiler.lir.Variable result
        end local 3 // jdk.vm.ci.meta.Value delta
        end local 2 // jdk.vm.ci.meta.ValueKind kind
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    6     1  address  Ljdk/vm/ci/meta/Value;
            0    6     2     kind  Ljdk/vm/ci/meta/ValueKind<*>;
            0    6     3    delta  Ljdk/vm/ci/meta/Value;
            1    6     4   result  Lorg/graalvm/compiler/lir/Variable;
    Signature: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    MethodParameters:
         Name  Flags
      address  
      kind     
      delta    

  public void emitMembar(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // int barriers
         0: .line 197
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            iload 1 /* barriers */
            invokevirtual jdk.vm.ci.code.Architecture.requiredBarriers:(I)I
            istore 2 /* necessaryBarriers */
        start local 2 // int necessaryBarriers
         1: .line 198
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.isMP:Z
            ifeq 3
            iload 2 /* necessaryBarriers */
            ifeq 3
         2: .line 199
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64Move$MembarOp
            dup
            iload 2 /* necessaryBarriers */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$MembarOp.<init>:(I)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         3: .line 201
      StackMap locals: int
      StackMap stack:
            return
        end local 2 // int necessaryBarriers
        end local 1 // int barriers
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0               this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    4     1           barriers  I
            1    4     2  necessaryBarriers  I
    MethodParameters:
          Name  Flags
      barriers  

  public void emitJump(org.graalvm.compiler.lir.LabelRef);
    descriptor: (Lorg/graalvm/compiler/lir/LabelRef;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.lir.LabelRef label
         0: .line 205
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* label */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.StandardOp$JumpOp
            dup
            aload 1 /* label */
            invokespecial org.graalvm.compiler.lir.StandardOp$JumpOp.<init>:(Lorg/graalvm/compiler/lir/LabelRef;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         2: .line 207
            return
        end local 1 // org.graalvm.compiler.lir.LabelRef label
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1  label  Lorg/graalvm/compiler/lir/LabelRef;
    MethodParameters:
       Name  Flags
      label  

  public void emitOverflowCheckBranch(org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.core.common.LIRKind, double);
    descriptor: (Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/core/common/LIRKind;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.lir.LabelRef overflow
        start local 2 // org.graalvm.compiler.lir.LabelRef noOverflow
        start local 3 // org.graalvm.compiler.core.common.LIRKind cmpKind
        start local 4 // double overflowProbability
         0: .line 211
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp
            dup
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.VS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            aload 1 /* overflow */
            aload 2 /* noOverflow */
            dload 4 /* overflowProbability */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         1: .line 212
            return
        end local 4 // double overflowProbability
        end local 3 // org.graalvm.compiler.core.common.LIRKind cmpKind
        end local 2 // org.graalvm.compiler.lir.LabelRef noOverflow
        end local 1 // org.graalvm.compiler.lir.LabelRef overflow
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    2     0                 this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    2     1             overflow  Lorg/graalvm/compiler/lir/LabelRef;
            0    2     2           noOverflow  Lorg/graalvm/compiler/lir/LabelRef;
            0    2     3              cmpKind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    2     4  overflowProbability  D
    MethodParameters:
                     Name  Flags
      overflow             
      noOverflow           
      cmpKind              
      overflowProbability  

  public void emitIntegerTestBranch(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value left
        start local 2 // jdk.vm.ci.meta.Value right
        start local 3 // org.graalvm.compiler.lir.LabelRef trueDestination
        start local 4 // org.graalvm.compiler.lir.LabelRef falseDestination
        start local 5 // double trueSuccessorProbability
         0: .line 225
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 2
            aload 1 /* left */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 1
            aload 1 /* left */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            aload 2 /* right */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            if_acmpeq 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.getArithmetic:()Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGeneratorTool;
            checkcast org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* left */
            aastore
            dup
            iconst_1
            aload 2 /* right */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ANDS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* left */
            aload 2 /* right */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitBinary:(Ljdk/vm/ci/meta/ValueKind;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            pop
         3: .line 227
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp
            dup
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.EQ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            aload 3 /* trueDestination */
            aload 4 /* falseDestination */
            dload 5 /* trueSuccessorProbability */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         4: .line 228
            return
        end local 5 // double trueSuccessorProbability
        end local 4 // org.graalvm.compiler.lir.LabelRef falseDestination
        end local 3 // org.graalvm.compiler.lir.LabelRef trueDestination
        end local 2 // jdk.vm.ci.meta.Value right
        end local 1 // jdk.vm.ci.meta.Value left
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0    5     0                      this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    5     1                      left  Ljdk/vm/ci/meta/Value;
            0    5     2                     right  Ljdk/vm/ci/meta/Value;
            0    5     3           trueDestination  Lorg/graalvm/compiler/lir/LabelRef;
            0    5     4          falseDestination  Lorg/graalvm/compiler/lir/LabelRef;
            0    5     5  trueSuccessorProbability  D
    MethodParameters:
                          Name  Flags
      left                      
      right                     
      trueDestination           
      falseDestination          
      trueSuccessorProbability  

  public org.graalvm.compiler.lir.Variable emitConditionalMove(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=15, args_size=8
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.PlatformKind cmpKind
        start local 2 // jdk.vm.ci.meta.Value left
        start local 3 // jdk.vm.ci.meta.Value right
        start local 4 // org.graalvm.compiler.core.common.calc.Condition cond
        start local 5 // boolean unorderedIsTrue
        start local 6 // jdk.vm.ci.meta.Value trueValue
        start local 7 // jdk.vm.ci.meta.Value falseValue
         0: .line 247
            aload 0 /* this */
            getfield org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
            checkcast org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
            astore 8 /* arithLir */
        start local 8 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithLir
         1: .line 248
            aload 3 /* right */
            astore 9 /* actualRight */
        start local 9 // jdk.vm.ci.meta.Value actualRight
         2: .line 249
            aload 9 /* actualRight */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 4
            aload 8 /* arithLir */
            aload 9 /* actualRight */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.mustReplaceNullWithNullRegister:(Ljdk/vm/ci/meta/JavaConstant;)Z
            ifeq 4
         3: .line 250
            aload 8 /* arithLir */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getNullRegisterValue:()Ljdk/vm/ci/meta/AllocatableValue;
            astore 9 /* actualRight */
         4: .line 252
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator jdk.vm.ci.meta.Value
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cmpKind */
            aload 2 /* left */
            aload 9 /* actualRight */
            aload 4 /* cond */
            iload 5 /* unorderedIsTrue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
            istore 10 /* mirrored */
        start local 10 // boolean mirrored
         5: .line 253
            iload 10 /* mirrored */
            ifeq 6
            aload 4 /* cond */
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
            goto 7
      StackMap locals: int
      StackMap stack:
         6: aload 4 /* cond */
      StackMap locals:
      StackMap stack: org.graalvm.compiler.core.common.calc.Condition
         7: astore 11 /* finalCondition */
        start local 11 // org.graalvm.compiler.core.common.calc.Condition finalCondition
         8: .line 254
            iload 10 /* mirrored */
            ifeq 10
            iload 5 /* unorderedIsTrue */
            ifeq 9
            iconst_0
            goto 11
      StackMap locals: org.graalvm.compiler.core.common.calc.Condition
      StackMap stack:
         9: iconst_1
            goto 11
      StackMap locals:
      StackMap stack:
        10: iload 5 /* unorderedIsTrue */
      StackMap locals:
      StackMap stack: int
        11: istore 12 /* finalUnorderedIsTrue */
        start local 12 // boolean finalUnorderedIsTrue
        12: .line 255
            aload 1 /* cmpKind */
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            aload 11 /* finalCondition */
            iload 12 /* finalUnorderedIsTrue */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.toConditionFlag:(ZLorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            astore 13 /* cmpCondition */
        start local 13 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag cmpCondition
        13: .line 256
            aload 0 /* this */
            aload 6 /* trueValue */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 14 /* result */
        start local 14 // org.graalvm.compiler.lir.Variable result
        14: .line 258
            aload 6 /* trueValue */
            lconst_1
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 17
            aload 7 /* falseValue */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 17
        15: .line 259
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp
            dup
            aload 14 /* result */
            aload 13 /* cmpCondition */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        16: .line 260
            goto 21
      StackMap locals: int org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag org.graalvm.compiler.lir.Variable
      StackMap stack:
        17: aload 6 /* trueValue */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 20
            aload 7 /* falseValue */
            lconst_1
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 20
        18: .line 261
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp
            dup
            aload 14 /* result */
            aload 13 /* cmpCondition */
            invokevirtual org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.negate:()Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        19: .line 262
            goto 21
        20: .line 263
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondMoveOp
            dup
            aload 14 /* result */
            aload 13 /* cmpCondition */
            aload 0 /* this */
            aload 6 /* trueValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 7 /* falseValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        21: .line 265
      StackMap locals:
      StackMap stack:
            aload 14 /* result */
            areturn
        end local 14 // org.graalvm.compiler.lir.Variable result
        end local 13 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag cmpCondition
        end local 12 // boolean finalUnorderedIsTrue
        end local 11 // org.graalvm.compiler.core.common.calc.Condition finalCondition
        end local 10 // boolean mirrored
        end local 9 // jdk.vm.ci.meta.Value actualRight
        end local 8 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithLir
        end local 7 // jdk.vm.ci.meta.Value falseValue
        end local 6 // jdk.vm.ci.meta.Value trueValue
        end local 5 // boolean unorderedIsTrue
        end local 4 // org.graalvm.compiler.core.common.calc.Condition cond
        end local 3 // jdk.vm.ci.meta.Value right
        end local 2 // jdk.vm.ci.meta.Value left
        end local 1 // jdk.vm.ci.meta.PlatformKind cmpKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   22     0                  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0   22     1               cmpKind  Ljdk/vm/ci/meta/PlatformKind;
            0   22     2                  left  Ljdk/vm/ci/meta/Value;
            0   22     3                 right  Ljdk/vm/ci/meta/Value;
            0   22     4                  cond  Lorg/graalvm/compiler/core/common/calc/Condition;
            0   22     5       unorderedIsTrue  Z
            0   22     6             trueValue  Ljdk/vm/ci/meta/Value;
            0   22     7            falseValue  Ljdk/vm/ci/meta/Value;
            1   22     8              arithLir  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            2   22     9           actualRight  Ljdk/vm/ci/meta/Value;
            5   22    10              mirrored  Z
            8   22    11        finalCondition  Lorg/graalvm/compiler/core/common/calc/Condition;
           12   22    12  finalUnorderedIsTrue  Z
           13   22    13          cmpCondition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
           14   22    14                result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
                 Name  Flags
      cmpKind          
      left             
      right            final
      cond             
      unorderedIsTrue  
      trueValue        
      falseValue       

  public void emitCompareBranch(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef, double);
    descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;ZLorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=15, args_size=9
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.PlatformKind cmpKind
        start local 2 // jdk.vm.ci.meta.Value left
        start local 3 // jdk.vm.ci.meta.Value right
        start local 4 // org.graalvm.compiler.core.common.calc.Condition cond
        start local 5 // boolean unorderedIsTrue
        start local 6 // org.graalvm.compiler.lir.LabelRef trueDestination
        start local 7 // org.graalvm.compiler.lir.LabelRef falseDestination
        start local 8 // double trueDestinationProbability
         0: .line 271
            aload 3 /* right */
            astore 10 /* actualRight */
        start local 10 // jdk.vm.ci.meta.Value actualRight
         1: .line 272
            aload 4 /* cond */
            getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
            if_acmpne 21
         2: .line 274
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 3
            aload 2 /* left */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isNullConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 3
            new java.lang.AssertionError
            dup
            ldc "emitNullCheckBranch()'s null input should be in right."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 275
      StackMap locals: jdk.vm.ci.meta.Value
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
            checkcast org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
            astore 11 /* arithLir */
        start local 11 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithLir
         4: .line 276
            aload 10 /* actualRight */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isNullConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 13
         5: .line 277
            aload 10 /* actualRight */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            astore 12 /* rightConstant */
        start local 12 // jdk.vm.ci.meta.JavaConstant rightConstant
         6: .line 278
            aload 11 /* arithLir */
            aload 12 /* rightConstant */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.mustReplaceNullWithNullRegister:(Ljdk/vm/ci/meta/JavaConstant;)Z
            ifeq 9
         7: .line 279
            aload 11 /* arithLir */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getNullRegisterValue:()Ljdk/vm/ci/meta/AllocatableValue;
            astore 10 /* actualRight */
         8: .line 280
            goto 13
         9: .line 281
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator jdk.vm.ci.meta.JavaConstant
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp
            dup
            aload 0 /* this */
            aload 2 /* left */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 6 /* trueDestination */
            aload 7 /* falseDestination */
        10: .line 282
            dload 8 /* trueDestinationProbability */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
        11: .line 281
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        12: .line 283
            return
        end local 12 // jdk.vm.ci.meta.JavaConstant rightConstant
        13: .line 288
      StackMap locals:
      StackMap stack:
            aload 1 /* cmpKind */
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 12 /* kind */
        start local 12 // jdk.vm.ci.aarch64.AArch64Kind kind
        14: .line 289
            aload 12 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 21
        15: .line 290
            aload 2 /* left */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 18
        16: .line 291
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp
            dup
            aload 0 /* this */
            aload 10 /* actualRight */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 6 /* trueDestination */
            aload 7 /* falseDestination */
            dload 8 /* trueDestinationProbability */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        17: .line 292
            return
        18: .line 293
      StackMap locals: jdk.vm.ci.aarch64.AArch64Kind
      StackMap stack:
            aload 10 /* actualRight */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 21
        19: .line 294
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp
            dup
            aload 0 /* this */
            aload 2 /* left */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 6 /* trueDestination */
            aload 7 /* falseDestination */
            dload 8 /* trueDestinationProbability */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        20: .line 295
            return
        end local 12 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 11 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator arithLir
        21: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cmpKind */
            aload 2 /* left */
            aload 10 /* actualRight */
            aload 4 /* cond */
            iload 5 /* unorderedIsTrue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitCompare:(Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
            istore 11 /* mirrored */
        start local 11 // boolean mirrored
        22: .line 301
            iload 11 /* mirrored */
            ifeq 23
            aload 4 /* cond */
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.mirror:()Lorg/graalvm/compiler/core/common/calc/Condition;
            goto 24
      StackMap locals: int
      StackMap stack:
        23: aload 4 /* cond */
      StackMap locals:
      StackMap stack: org.graalvm.compiler.core.common.calc.Condition
        24: astore 12 /* finalCondition */
        start local 12 // org.graalvm.compiler.core.common.calc.Condition finalCondition
        25: .line 302
            iload 11 /* mirrored */
            ifeq 27
            iload 5 /* unorderedIsTrue */
            ifeq 26
            iconst_0
            goto 28
      StackMap locals: org.graalvm.compiler.core.common.calc.Condition
      StackMap stack:
        26: iconst_1
            goto 28
      StackMap locals:
      StackMap stack:
        27: iload 5 /* unorderedIsTrue */
      StackMap locals:
      StackMap stack: int
        28: istore 13 /* finalUnorderedIsTrue */
        start local 13 // boolean finalUnorderedIsTrue
        29: .line 303
            aload 1 /* cmpKind */
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            aload 12 /* finalCondition */
            iload 13 /* finalUnorderedIsTrue */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.toConditionFlag:(ZLorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            astore 14 /* cmpCondition */
        start local 14 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag cmpCondition
        30: .line 304
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp
            dup
            aload 14 /* cmpCondition */
            aload 6 /* trueDestination */
            aload 7 /* falseDestination */
            dload 8 /* trueDestinationProbability */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp.<init>:(Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;D)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        31: .line 305
            return
        end local 14 // org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag cmpCondition
        end local 13 // boolean finalUnorderedIsTrue
        end local 12 // org.graalvm.compiler.core.common.calc.Condition finalCondition
        end local 11 // boolean mirrored
        end local 10 // jdk.vm.ci.meta.Value actualRight
        end local 8 // double trueDestinationProbability
        end local 7 // org.graalvm.compiler.lir.LabelRef falseDestination
        end local 6 // org.graalvm.compiler.lir.LabelRef trueDestination
        end local 5 // boolean unorderedIsTrue
        end local 4 // org.graalvm.compiler.core.common.calc.Condition cond
        end local 3 // jdk.vm.ci.meta.Value right
        end local 2 // jdk.vm.ci.meta.Value left
        end local 1 // jdk.vm.ci.meta.PlatformKind cmpKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0   32     0                        this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0   32     1                     cmpKind  Ljdk/vm/ci/meta/PlatformKind;
            0   32     2                        left  Ljdk/vm/ci/meta/Value;
            0   32     3                       right  Ljdk/vm/ci/meta/Value;
            0   32     4                        cond  Lorg/graalvm/compiler/core/common/calc/Condition;
            0   32     5             unorderedIsTrue  Z
            0   32     6             trueDestination  Lorg/graalvm/compiler/lir/LabelRef;
            0   32     7            falseDestination  Lorg/graalvm/compiler/lir/LabelRef;
            0   32     8  trueDestinationProbability  D
            1   32    10                 actualRight  Ljdk/vm/ci/meta/Value;
            4   21    11                    arithLir  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            6   13    12               rightConstant  Ljdk/vm/ci/meta/JavaConstant;
           14   21    12                        kind  Ljdk/vm/ci/aarch64/AArch64Kind;
           22   32    11                    mirrored  Z
           25   32    12              finalCondition  Lorg/graalvm/compiler/core/common/calc/Condition;
           29   32    13        finalUnorderedIsTrue  Z
           30   32    14                cmpCondition  Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    MethodParameters:
                            Name  Flags
      cmpKind                     
      left                        
      right                       final
      cond                        
      unorderedIsTrue             
      trueDestination             
      falseDestination            
      trueDestinationProbability  

  private static org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag toConditionFlag(boolean, org.graalvm.compiler.core.common.calc.Condition, boolean);
    descriptor: (ZLorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // boolean isInt
        start local 1 // org.graalvm.compiler.core.common.calc.Condition cond
        start local 2 // boolean unorderedIsTrue
         0: .line 308
            iload 0 /* isInt */
            ifeq 1
            aload 1 /* cond */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.toIntConditionFlag:(Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 1 /* cond */
            iload 2 /* unorderedIsTrue */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.toFloatConditionFlag:(Lorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag
         2: areturn
        end local 2 // boolean unorderedIsTrue
        end local 1 // org.graalvm.compiler.core.common.calc.Condition cond
        end local 0 // boolean isInt
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0            isInt  Z
            0    3     1             cond  Lorg/graalvm/compiler/core/common/calc/Condition;
            0    3     2  unorderedIsTrue  Z
    MethodParameters:
                 Name  Flags
      isInt            
      cond             
      unorderedIsTrue  

  private static org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag toFloatConditionFlag(org.graalvm.compiler.core.common.calc.Condition, boolean);
    descriptor: (Lorg/graalvm/compiler/core/common/calc/Condition;Z)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.common.calc.Condition cond
        start local 1 // boolean unorderedIsTrue
         0: .line 317
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$Condition:()[I
            aload 0 /* cond */
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            iaload
            tableswitch { // 1 - 6
                    1: 13
                    2: 14
                    3: 1
                    4: 4
                    5: 10
                    6: 7
              default: 15
          }
         1: .line 319
      StackMap locals:
      StackMap stack:
            iload 1 /* unorderedIsTrue */
            ifeq 2
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            goto 3
      StackMap locals:
      StackMap stack:
         2: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LO:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag
         3: areturn
         4: .line 321
      StackMap locals:
      StackMap stack:
            iload 1 /* unorderedIsTrue */
            ifeq 5
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            goto 6
      StackMap locals:
      StackMap stack:
         5: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag
         6: areturn
         7: .line 323
      StackMap locals:
      StackMap stack:
            iload 1 /* unorderedIsTrue */
            ifeq 8
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.PL:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            goto 9
      StackMap locals:
      StackMap stack:
         8: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.GE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag
         9: areturn
        10: .line 325
      StackMap locals:
      StackMap stack:
            iload 1 /* unorderedIsTrue */
            ifeq 11
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.HI:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            goto 12
      StackMap locals:
      StackMap stack:
        11: getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.GT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag
        12: areturn
        13: .line 327
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.EQ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
        14: .line 329
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.NE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
        15: .line 331
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // boolean unorderedIsTrue
        end local 0 // org.graalvm.compiler.core.common.calc.Condition cond
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   16     0             cond  Lorg/graalvm/compiler/core/common/calc/Condition;
            0   16     1  unorderedIsTrue  Z
    MethodParameters:
                 Name  Flags
      cond             
      unorderedIsTrue  

  private static org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag toIntConditionFlag(org.graalvm.compiler.core.common.calc.Condition);
    descriptor: (Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.calc.Condition cond
         0: .line 339
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$Condition:()[I
            aload 0 /* cond */
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            iaload
            tableswitch { // 1 - 10
                    1: 1
                    2: 2
                    3: 3
                    4: 4
                    5: 5
                    6: 6
                    7: 7
                    8: 8
                    9: 9
                   10: 10
              default: 11
          }
         1: .line 341
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.EQ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         2: .line 343
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.NE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         3: .line 345
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         4: .line 347
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         5: .line 349
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.GT:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         6: .line 351
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.GE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         7: .line 353
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.HS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         8: .line 355
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LS:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
         9: .line 357
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.HI:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
        10: .line 359
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.LO:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            areturn
        11: .line 361
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 0 // org.graalvm.compiler.core.common.calc.Condition cond
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  cond  Lorg/graalvm/compiler/core/common/calc/Condition;
    MethodParameters:
      Name  Flags
      cond  

  protected boolean emitCompare(jdk.vm.ci.meta.PlatformKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.core.common.calc.Condition, boolean);
    descriptor: (Ljdk/vm/ci/meta/PlatformKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=15, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.PlatformKind cmpKind
        start local 2 // jdk.vm.ci.meta.Value a
        start local 3 // jdk.vm.ci.meta.Value b
        start local 4 // org.graalvm.compiler.core.common.calc.Condition condition
        start local 5 // boolean unorderedIsTrue
         0: .line 377
            aload 1 /* cmpKind */
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 9 /* kind */
        start local 9 // jdk.vm.ci.aarch64.AArch64Kind kind
         1: .line 378
            aload 9 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 30
         2: .line 379
            aload 2 /* a */
            astore 10 /* aExt */
        start local 10 // jdk.vm.ci.meta.Value aExt
         3: .line 380
            aload 3 /* b */
            astore 11 /* bExt */
        start local 11 // jdk.vm.ci.meta.Value bExt
         4: .line 382
            aload 1 /* cmpKind */
            invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
            istore 12 /* compareBytes */
        start local 12 // int compareBytes
         5: .line 384
            iload 12 /* compareBytes */
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
            if_icmpge 7
         6: .line 385
            aload 0 /* this */
            getfield org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
            aload 2 /* a */
            iload 12 /* compareBytes */
            bipush 8
            imul
            bipush 64
            invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitSignExtend:(Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
            astore 10 /* aExt */
         7: .line 387
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int top top top jdk.vm.ci.aarch64.AArch64Kind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int
      StackMap stack:
            iload 12 /* compareBytes */
            aload 3 /* b */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
            if_icmpge 9
         8: .line 388
            aload 0 /* this */
            getfield org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.arithmeticLIRGen:Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGenerator;
            aload 3 /* b */
            iload 12 /* compareBytes */
            bipush 8
            imul
            bipush 64
            invokevirtual org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.emitSignExtend:(Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
            astore 11 /* bExt */
         9: .line 395
      StackMap locals:
      StackMap stack:
            aload 10 /* aExt */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 10
            aload 10 /* aExt */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 10
            iconst_1
            goto 11
      StackMap locals:
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 13 /* aIsStackPointer */
        start local 13 // boolean aIsStackPointer
        12: .line 396
            aload 11 /* bExt */
            invokestatic jdk.vm.ci.code.ValueUtil.isRegister:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 13
            aload 11 /* bExt */
            invokestatic jdk.vm.ci.code.ValueUtil.asRegister:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/code/Register;
            getstatic jdk.vm.ci.aarch64.AArch64.sp:Ljdk/vm/ci/code/Register;
            invokevirtual jdk.vm.ci.code.Register.equals:(Ljava/lang/Object;)Z
            ifeq 13
            iconst_1
            goto 14
      StackMap locals: int
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: istore 14 /* bIsStackPointer */
        start local 14 // boolean bIsStackPointer
        15: .line 398
            iload 13 /* aIsStackPointer */
            ifeq 20
            iload 14 /* bIsStackPointer */
            ifeq 20
        16: .line 403
            aload 0 /* this */
            aload 10 /* aExt */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            dup
            astore 7 /* right */
        start local 7 // jdk.vm.ci.meta.Value right
        17: astore 6 /* left */
        start local 6 // jdk.vm.ci.meta.Value left
        18: .line 404
            iconst_0
            istore 8 /* mirrored */
        start local 8 // boolean mirrored
        19: .line 405
            goto 28
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
      StackMap locals: int
      StackMap stack:
        20: iload 14 /* bIsStackPointer */
            ifne 21
            aload 0 /* this */
            aload 10 /* aExt */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.isCompareConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 25
            aload 0 /* this */
            aload 11 /* bExt */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.isCompareConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifne 25
        21: .line 406
      StackMap locals:
      StackMap stack:
            aload 11 /* bExt */
            astore 6 /* left */
        start local 6 // jdk.vm.ci.meta.Value left
        22: .line 407
            aload 0 /* this */
            aload 10 /* aExt */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadNonConst:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            astore 7 /* right */
        start local 7 // jdk.vm.ci.meta.Value right
        23: .line 408
            iconst_1
            istore 8 /* mirrored */
        start local 8 // boolean mirrored
        24: .line 409
            goto 28
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
        25: .line 410
      StackMap locals:
      StackMap stack:
            aload 10 /* aExt */
            astore 6 /* left */
        start local 6 // jdk.vm.ci.meta.Value left
        26: .line 411
            aload 0 /* this */
            aload 11 /* bExt */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadNonConst:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            astore 7 /* right */
        start local 7 // jdk.vm.ci.meta.Value right
        27: .line 412
            iconst_0
            istore 8 /* mirrored */
        start local 8 // boolean mirrored
        28: .line 414
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int jdk.vm.ci.aarch64.AArch64Kind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int int int
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64Compare$CompareOp
            dup
            aload 0 /* this */
            aload 6 /* left */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 7 /* right */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadNonCompareConst:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Compare$CompareOp.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        end local 14 // boolean bIsStackPointer
        end local 13 // boolean aIsStackPointer
        end local 12 // int compareBytes
        end local 11 // jdk.vm.ci.meta.Value bExt
        end local 10 // jdk.vm.ci.meta.Value aExt
        29: .line 415
            goto 47
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int top top top jdk.vm.ci.aarch64.AArch64Kind
      StackMap stack:
        30: aload 9 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isSIMD:()Z
            ifeq 46
        31: .line 416
            aload 2 /* a */
            aload 4 /* condition */
            iload 5 /* unorderedIsTrue */
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64Compare$FloatCompareOp.isFloatCmpConstant:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
            ifeq 36
        32: .line 417
            aload 3 /* b */
            astore 6 /* left */
        start local 6 // jdk.vm.ci.meta.Value left
        33: .line 418
            aload 2 /* a */
            astore 7 /* right */
        start local 7 // jdk.vm.ci.meta.Value right
        34: .line 419
            iconst_1
            istore 8 /* mirrored */
        start local 8 // boolean mirrored
        35: .line 420
            goto 44
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
      StackMap locals:
      StackMap stack:
        36: aload 3 /* b */
            aload 4 /* condition */
            iload 5 /* unorderedIsTrue */
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64Compare$FloatCompareOp.isFloatCmpConstant:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)Z
            ifeq 41
        37: .line 421
            aload 2 /* a */
            astore 6 /* left */
        start local 6 // jdk.vm.ci.meta.Value left
        38: .line 422
            aload 3 /* b */
            astore 7 /* right */
        start local 7 // jdk.vm.ci.meta.Value right
        39: .line 423
            iconst_0
            istore 8 /* mirrored */
        start local 8 // boolean mirrored
        40: .line 424
            goto 44
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
        41: .line 425
      StackMap locals:
      StackMap stack:
            aload 2 /* a */
            astore 6 /* left */
        start local 6 // jdk.vm.ci.meta.Value left
        42: .line 426
            aload 0 /* this */
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 7 /* right */
        start local 7 // jdk.vm.ci.meta.Value right
        43: .line 427
            iconst_0
            istore 8 /* mirrored */
        start local 8 // boolean mirrored
        44: .line 429
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int jdk.vm.ci.aarch64.AArch64Kind
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64Compare$FloatCompareOp
            dup
            aload 0 /* this */
            aload 6 /* left */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 7 /* right */
            aload 4 /* condition */
            iload 5 /* unorderedIsTrue */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Compare$FloatCompareOp.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/core/common/calc/Condition;Z)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        45: .line 430
            goto 47
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
        46: .line 431
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int top top top jdk.vm.ci.aarch64.AArch64Kind
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        start local 6 // jdk.vm.ci.meta.Value left
        start local 7 // jdk.vm.ci.meta.Value right
        start local 8 // boolean mirrored
        47: .line 433
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.meta.PlatformKind jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value org.graalvm.compiler.core.common.calc.Condition int jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int jdk.vm.ci.aarch64.AArch64Kind
      StackMap stack:
            iload 8 /* mirrored */
            ireturn
        end local 9 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 8 // boolean mirrored
        end local 7 // jdk.vm.ci.meta.Value right
        end local 6 // jdk.vm.ci.meta.Value left
        end local 5 // boolean unorderedIsTrue
        end local 4 // org.graalvm.compiler.core.common.calc.Condition condition
        end local 3 // jdk.vm.ci.meta.Value b
        end local 2 // jdk.vm.ci.meta.Value a
        end local 1 // jdk.vm.ci.meta.PlatformKind cmpKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   48     0             this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0   48     1          cmpKind  Ljdk/vm/ci/meta/PlatformKind;
            0   48     2                a  Ljdk/vm/ci/meta/Value;
            0   48     3                b  Ljdk/vm/ci/meta/Value;
            0   48     4        condition  Lorg/graalvm/compiler/core/common/calc/Condition;
            0   48     5  unorderedIsTrue  Z
           18   20     6             left  Ljdk/vm/ci/meta/Value;
           22   25     6             left  Ljdk/vm/ci/meta/Value;
           26   30     6             left  Ljdk/vm/ci/meta/Value;
           33   36     6             left  Ljdk/vm/ci/meta/Value;
           38   41     6             left  Ljdk/vm/ci/meta/Value;
           42   46     6             left  Ljdk/vm/ci/meta/Value;
           47   48     6             left  Ljdk/vm/ci/meta/Value;
           17   20     7            right  Ljdk/vm/ci/meta/Value;
           23   25     7            right  Ljdk/vm/ci/meta/Value;
           27   30     7            right  Ljdk/vm/ci/meta/Value;
           34   36     7            right  Ljdk/vm/ci/meta/Value;
           39   41     7            right  Ljdk/vm/ci/meta/Value;
           43   46     7            right  Ljdk/vm/ci/meta/Value;
           47   48     7            right  Ljdk/vm/ci/meta/Value;
           19   20     8         mirrored  Z
           24   25     8         mirrored  Z
           28   30     8         mirrored  Z
           35   36     8         mirrored  Z
           40   41     8         mirrored  Z
           44   46     8         mirrored  Z
           47   48     8         mirrored  Z
            1   48     9             kind  Ljdk/vm/ci/aarch64/AArch64Kind;
            3   29    10             aExt  Ljdk/vm/ci/meta/Value;
            4   29    11             bExt  Ljdk/vm/ci/meta/Value;
            5   29    12     compareBytes  I
           12   29    13  aIsStackPointer  Z
           15   29    14  bIsStackPointer  Z
    MethodParameters:
                 Name  Flags
      cmpKind          
      a                
      b                
      condition        
      unorderedIsTrue  

  protected jdk.vm.ci.meta.Value loadNonCompareConst(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
         0: .line 441
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.isCompareConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifne 2
         1: .line 442
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.loadReg:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            areturn
         2: .line 444
      StackMap locals:
      StackMap stack:
            aload 1 /* value */
            areturn
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1  value  Ljdk/vm/ci/meta/Value;
    MethodParameters:
       Name  Flags
      value  

  public boolean isCompareConstant(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
         0: .line 457
            aload 1 /* value */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 16
         1: .line 458
            aload 1 /* value */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            astore 2 /* constant */
        start local 2 // jdk.vm.ci.meta.JavaConstant constant
         2: .line 459
            aload 2 /* constant */
            instanceof jdk.vm.ci.meta.PrimitiveConstant
            ifeq 15
         3: .line 460
            aload 2 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lstore 3 /* longValue */
        start local 3 // long longValue
         4: .line 462
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 2 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 1 - 7
                    1: 5
                    2: 5
                    3: 7
                    4: 7
                    5: 9
                    6: 13
                    7: 11
              default: 13
          }
         5: .line 465
      StackMap locals: jdk.vm.ci.meta.JavaConstant long
      StackMap stack:
            lload 3 /* longValue */
            ldc 255
            land
            lstore 5 /* maskedValue */
        start local 5 // long maskedValue
         6: .line 466
            goto 14
        end local 5 // long maskedValue
         7: .line 469
      StackMap locals:
      StackMap stack:
            lload 3 /* longValue */
            ldc 65535
            land
            lstore 5 /* maskedValue */
        start local 5 // long maskedValue
         8: .line 470
            goto 14
        end local 5 // long maskedValue
         9: .line 472
      StackMap locals:
      StackMap stack:
            lload 3 /* longValue */
            ldc -1
            land
            lstore 5 /* maskedValue */
        start local 5 // long maskedValue
        10: .line 473
            goto 14
        end local 5 // long maskedValue
        11: .line 475
      StackMap locals:
      StackMap stack:
            lload 3 /* longValue */
            lstore 5 /* maskedValue */
        start local 5 // long maskedValue
        12: .line 476
            goto 14
        end local 5 // long maskedValue
        13: .line 478
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        start local 5 // long maskedValue
        14: .line 480
      StackMap locals: long
      StackMap stack:
            lload 5 /* maskedValue */
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isArithmeticImmediate:(J)Z
            ireturn
        end local 5 // long maskedValue
        end local 3 // long longValue
        15: .line 482
      StackMap locals:
      StackMap stack:
            aload 2 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isDefaultForKind:()Z
            ireturn
        end local 2 // jdk.vm.ci.meta.JavaConstant constant
        16: .line 485
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0   17     1        value  Ljdk/vm/ci/meta/Value;
            2   16     2     constant  Ljdk/vm/ci/meta/JavaConstant;
            4   15     3    longValue  J
            6    7     5  maskedValue  J
            8    9     5  maskedValue  J
           10   11     5  maskedValue  J
           12   13     5  maskedValue  J
           14   15     5  maskedValue  J
    MethodParameters:
       Name  Flags
      value  

  public org.graalvm.compiler.lir.Variable emitIntegerTestMove(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value left
        start local 2 // jdk.vm.ci.meta.Value right
        start local 3 // jdk.vm.ci.meta.Value trueValue
        start local 4 // jdk.vm.ci.meta.Value falseValue
         0: .line 499
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 2
            aload 1 /* left */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 1
            aload 2 /* right */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 500
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$assertionsDisabled:Z
            ifne 4
            aload 3 /* trueValue */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 3
            aload 4 /* falseValue */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifne 4
      StackMap locals:
      StackMap stack:
         3: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.getArithmetic:()Lorg/graalvm/compiler/lir/gen/ArithmeticLIRGeneratorTool;
            checkcast org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
            aload 1 /* left */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ANDS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* left */
            aload 2 /* right */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitBinary:(Ljdk/vm/ci/meta/ValueKind;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;ZLjdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            pop
         5: .line 502
            aload 0 /* this */
            aload 3 /* trueValue */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 5 /* result */
        start local 5 // org.graalvm.compiler.lir.Variable result
         6: .line 504
            aload 3 /* trueValue */
            lconst_1
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 9
            aload 4 /* falseValue */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 9
         7: .line 505
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp
            dup
            aload 5 /* result */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.EQ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         8: .line 506
            goto 13
      StackMap locals: org.graalvm.compiler.lir.Variable
      StackMap stack:
         9: aload 3 /* trueValue */
            lconst_0
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 12
            aload 4 /* falseValue */
            lconst_1
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isIntConstant:(Ljdk/vm/ci/meta/Value;J)Z
            ifeq 12
        10: .line 507
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp
            dup
            aload 5 /* result */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.NE:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        11: .line 508
            goto 13
        12: .line 509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondMoveOp
            dup
            aload 5 /* result */
            getstatic org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag.EQ:Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            aload 0 /* this */
            aload 3 /* trueValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            aload 0 /* this */
            aload 4 /* falseValue */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.load:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondMoveOp.<init>:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        13: .line 511
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // jdk.vm.ci.meta.Value falseValue
        end local 3 // jdk.vm.ci.meta.Value trueValue
        end local 2 // jdk.vm.ci.meta.Value right
        end local 1 // jdk.vm.ci.meta.Value left
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   14     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0   14     1        left  Ljdk/vm/ci/meta/Value;
            0   14     2       right  Ljdk/vm/ci/meta/Value;
            0   14     3   trueValue  Ljdk/vm/ci/meta/Value;
            0   14     4  falseValue  Ljdk/vm/ci/meta/Value;
            6   14     5      result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
            Name  Flags
      left        
      right       
      trueValue   
      falseValue  

  public void emitStrategySwitch(org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef);
    descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy;Lorg/graalvm/compiler/lir/Variable;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.lir.SwitchStrategy strategy
        start local 2 // org.graalvm.compiler.lir.Variable key
        start local 3 // org.graalvm.compiler.lir.LabelRef[] keyTargets
        start local 4 // org.graalvm.compiler.lir.LabelRef defaultTarget
         0: .line 516
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* strategy */
            aload 3 /* keyTargets */
            aload 4 /* defaultTarget */
            aload 2 /* key */
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.graalvm.compiler.lir.Variable.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  org/graalvm/compiler/core/aarch64/AArch64LIRGenerator.toIntConditionFlag(Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag; (6)
                  (Lorg/graalvm/compiler/core/common/calc/Condition;)Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.createStrategySwitchOp:(Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;Ljava/util/function/Function;)Lorg/graalvm/compiler/lir/aarch64/AArch64ControlFlow$StrategySwitchOp;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         1: .line 517
            return
        end local 4 // org.graalvm.compiler.lir.LabelRef defaultTarget
        end local 3 // org.graalvm.compiler.lir.LabelRef[] keyTargets
        end local 2 // org.graalvm.compiler.lir.Variable key
        end local 1 // org.graalvm.compiler.lir.SwitchStrategy strategy
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    2     1       strategy  Lorg/graalvm/compiler/lir/SwitchStrategy;
            0    2     2            key  Lorg/graalvm/compiler/lir/Variable;
            0    2     3     keyTargets  [Lorg/graalvm/compiler/lir/LabelRef;
            0    2     4  defaultTarget  Lorg/graalvm/compiler/lir/LabelRef;
    MethodParameters:
               Name  Flags
      strategy       
      key            
      keyTargets     
      defaultTarget  

  protected org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$StrategySwitchOp createStrategySwitchOp(org.graalvm.compiler.lir.SwitchStrategy, org.graalvm.compiler.lir.LabelRef[], org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.Variable, jdk.vm.ci.meta.AllocatableValue, java.util.function.Function<org.graalvm.compiler.core.common.calc.Condition, org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag>);
    descriptor: (Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;Ljava/util/function/Function;)Lorg/graalvm/compiler/lir/aarch64/AArch64ControlFlow$StrategySwitchOp;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // org.graalvm.compiler.lir.SwitchStrategy strategy
        start local 2 // org.graalvm.compiler.lir.LabelRef[] keyTargets
        start local 3 // org.graalvm.compiler.lir.LabelRef defaultTarget
        start local 4 // org.graalvm.compiler.lir.Variable key
        start local 5 // jdk.vm.ci.meta.AllocatableValue scratchValue
        start local 6 // java.util.function.Function converter
         0: .line 521
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$StrategySwitchOp
            dup
            aload 1 /* strategy */
            aload 2 /* keyTargets */
            aload 3 /* defaultTarget */
            aload 4 /* key */
            aload 5 /* scratchValue */
            aload 6 /* converter */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$StrategySwitchOp.<init>:(Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljava/util/function/Function;)V
            areturn
        end local 6 // java.util.function.Function converter
        end local 5 // jdk.vm.ci.meta.AllocatableValue scratchValue
        end local 4 // org.graalvm.compiler.lir.Variable key
        end local 3 // org.graalvm.compiler.lir.LabelRef defaultTarget
        end local 2 // org.graalvm.compiler.lir.LabelRef[] keyTargets
        end local 1 // org.graalvm.compiler.lir.SwitchStrategy strategy
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    1     1       strategy  Lorg/graalvm/compiler/lir/SwitchStrategy;
            0    1     2     keyTargets  [Lorg/graalvm/compiler/lir/LabelRef;
            0    1     3  defaultTarget  Lorg/graalvm/compiler/lir/LabelRef;
            0    1     4            key  Lorg/graalvm/compiler/lir/Variable;
            0    1     5   scratchValue  Ljdk/vm/ci/meta/AllocatableValue;
            0    1     6      converter  Ljava/util/function/Function<Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;>;
    Signature: (Lorg/graalvm/compiler/lir/SwitchStrategy;[Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/LabelRef;Lorg/graalvm/compiler/lir/Variable;Ljdk/vm/ci/meta/AllocatableValue;Ljava/util/function/Function<Lorg/graalvm/compiler/core/common/calc/Condition;Lorg/graalvm/compiler/asm/aarch64/AArch64Assembler$ConditionFlag;>;)Lorg/graalvm/compiler/lir/aarch64/AArch64ControlFlow$StrategySwitchOp;
    MethodParameters:
               Name  Flags
      strategy       
      keyTargets     
      defaultTarget  
      key            
      scratchValue   
      converter      

  protected void emitTableSwitch(int, org.graalvm.compiler.lir.LabelRef, org.graalvm.compiler.lir.LabelRef[], jdk.vm.ci.meta.Value);
    descriptor: (ILorg/graalvm/compiler/lir/LabelRef;[Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // int lowKey
        start local 2 // org.graalvm.compiler.lir.LabelRef defaultTarget
        start local 3 // org.graalvm.compiler.lir.LabelRef[] targets
        start local 4 // jdk.vm.ci.meta.Value key
         0: .line 526
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$TableSwitchOp
            dup
            iload 1 /* lowKey */
            aload 2 /* defaultTarget */
            aload 3 /* targets */
            aload 4 /* key */
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.target:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.arch:Ljdk/vm/ci/code/Architecture;
            invokevirtual jdk.vm.ci.code.Architecture.getWordKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            aload 0 /* this */
            aload 4 /* key */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$TableSwitchOp.<init>:(ILorg/graalvm/compiler/lir/LabelRef;[Lorg/graalvm/compiler/lir/LabelRef;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/Variable;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         1: .line 527
            return
        end local 4 // jdk.vm.ci.meta.Value key
        end local 3 // org.graalvm.compiler.lir.LabelRef[] targets
        end local 2 // org.graalvm.compiler.lir.LabelRef defaultTarget
        end local 1 // int lowKey
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    2     1         lowKey  I
            0    2     2  defaultTarget  Lorg/graalvm/compiler/lir/LabelRef;
            0    2     3        targets  [Lorg/graalvm/compiler/lir/LabelRef;
            0    2     4            key  Ljdk/vm/ci/meta/Value;
    MethodParameters:
               Name  Flags
      lowKey         
      defaultTarget  
      targets        
      key            

  public org.graalvm.compiler.lir.Variable emitByteSwap(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value input
         0: .line 531
            aload 0 /* this */
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* input */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 2 /* result */
        start local 2 // org.graalvm.compiler.lir.Variable result
         1: .line 532
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ByteSwapOp
            dup
            aload 2 /* result */
            aload 1 /* input */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ByteSwapOp.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         2: .line 533
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.lir.Variable result
        end local 1 // jdk.vm.ci.meta.Value input
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1   input  Ljdk/vm/ci/meta/Value;
            1    3     2  result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
       Name  Flags
      input  

  public org.graalvm.compiler.lir.Variable emitArrayCompareTo(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=12, args_size=7
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.JavaKind kind1
        start local 2 // jdk.vm.ci.meta.JavaKind kind2
        start local 3 // jdk.vm.ci.meta.Value array1
        start local 4 // jdk.vm.ci.meta.Value array2
        start local 5 // jdk.vm.ci.meta.Value length1
        start local 6 // jdk.vm.ci.meta.Value length2
         0: .line 538
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            astore 7 /* resultKind */
        start local 7 // org.graalvm.compiler.core.common.LIRKind resultKind
         1: .line 540
            getstatic jdk.vm.ci.aarch64.AArch64.r0:Ljdk/vm/ci/code/Register;
            aload 7 /* resultKind */
            invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
            astore 8 /* res */
        start local 8 // jdk.vm.ci.code.RegisterValue res
         2: .line 541
            getstatic jdk.vm.ci.aarch64.AArch64.r1:Ljdk/vm/ci/code/Register;
            aload 5 /* length1 */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
            astore 9 /* cnt1 */
        start local 9 // jdk.vm.ci.code.RegisterValue cnt1
         3: .line 542
            getstatic jdk.vm.ci.aarch64.AArch64.r2:Ljdk/vm/ci/code/Register;
            aload 6 /* length2 */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
            astore 10 /* cnt2 */
        start local 10 // jdk.vm.ci.code.RegisterValue cnt2
         4: .line 543
            aload 0 /* this */
            aload 9 /* cnt1 */
            aload 5 /* length1 */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
         5: .line 544
            aload 0 /* this */
            aload 10 /* cnt2 */
            aload 6 /* length2 */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
         6: .line 545
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ArrayCompareToOp
            dup
            aload 0 /* this */
            aload 1 /* kind1 */
            aload 2 /* kind2 */
            aload 8 /* res */
            aload 3 /* array1 */
            aload 4 /* array2 */
            aload 9 /* cnt1 */
            aload 10 /* cnt2 */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArrayCompareToOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         7: .line 546
            aload 0 /* this */
            aload 7 /* resultKind */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 11 /* result */
        start local 11 // org.graalvm.compiler.lir.Variable result
         8: .line 547
            aload 0 /* this */
            aload 11 /* result */
            aload 8 /* res */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
         9: .line 548
            aload 11 /* result */
            areturn
        end local 11 // org.graalvm.compiler.lir.Variable result
        end local 10 // jdk.vm.ci.code.RegisterValue cnt2
        end local 9 // jdk.vm.ci.code.RegisterValue cnt1
        end local 8 // jdk.vm.ci.code.RegisterValue res
        end local 7 // org.graalvm.compiler.core.common.LIRKind resultKind
        end local 6 // jdk.vm.ci.meta.Value length2
        end local 5 // jdk.vm.ci.meta.Value length1
        end local 4 // jdk.vm.ci.meta.Value array2
        end local 3 // jdk.vm.ci.meta.Value array1
        end local 2 // jdk.vm.ci.meta.JavaKind kind2
        end local 1 // jdk.vm.ci.meta.JavaKind kind1
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0   10     1       kind1  Ljdk/vm/ci/meta/JavaKind;
            0   10     2       kind2  Ljdk/vm/ci/meta/JavaKind;
            0   10     3      array1  Ljdk/vm/ci/meta/Value;
            0   10     4      array2  Ljdk/vm/ci/meta/Value;
            0   10     5     length1  Ljdk/vm/ci/meta/Value;
            0   10     6     length2  Ljdk/vm/ci/meta/Value;
            1   10     7  resultKind  Lorg/graalvm/compiler/core/common/LIRKind;
            2   10     8         res  Ljdk/vm/ci/code/RegisterValue;
            3   10     9        cnt1  Ljdk/vm/ci/code/RegisterValue;
            4   10    10        cnt2  Ljdk/vm/ci/code/RegisterValue;
            8   10    11      result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
         Name  Flags
      kind1    
      kind2    
      array1   
      array2   
      length1  
      length2  

  public org.graalvm.compiler.lir.Variable emitArrayEquals(jdk.vm.ci.meta.JavaKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.JavaKind kind
        start local 2 // jdk.vm.ci.meta.Value array1
        start local 3 // jdk.vm.ci.meta.Value array2
        start local 4 // jdk.vm.ci.meta.Value length
        start local 5 // boolean directPointers
         0: .line 553
            aload 0 /* this */
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokestatic org.graalvm.compiler.core.common.LIRKind.value:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.newVariable:(Ljdk/vm/ci/meta/ValueKind;)Lorg/graalvm/compiler/lir/Variable;
            astore 6 /* result */
        start local 6 // org.graalvm.compiler.lir.Variable result
         1: .line 554
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ArrayEqualsOp
            dup
            aload 0 /* this */
            aload 1 /* kind */
            aload 6 /* result */
            aload 2 /* array1 */
            aload 3 /* array2 */
            aload 0 /* this */
            aload 4 /* length */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            iload 5 /* directPointers */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArrayEqualsOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Ljdk/vm/ci/meta/JavaKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         2: .line 555
            aload 6 /* result */
            areturn
        end local 6 // org.graalvm.compiler.lir.Variable result
        end local 5 // boolean directPointers
        end local 4 // jdk.vm.ci.meta.Value length
        end local 3 // jdk.vm.ci.meta.Value array2
        end local 2 // jdk.vm.ci.meta.Value array1
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1            kind  Ljdk/vm/ci/meta/JavaKind;
            0    3     2          array1  Ljdk/vm/ci/meta/Value;
            0    3     3          array2  Ljdk/vm/ci/meta/Value;
            0    3     4          length  Ljdk/vm/ci/meta/Value;
            0    3     5  directPointers  Z
            1    3     6          result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
                Name  Flags
      kind            
      array1          
      array2          
      length          
      directPointers  

  protected jdk.vm.ci.meta.JavaConstant zapValueForKind(jdk.vm.ci.meta.PlatformKind);
    descriptor: (Ljdk/vm/ci/meta/PlatformKind;)Ljdk/vm/ci/meta/JavaConstant;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.PlatformKind kind
         0: .line 560
            ldc -2401018187971961171
            lstore 2 /* dead */
        start local 2 // long dead
         1: .line 561
            invokestatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind:()[I
            aload 1 /* kind */
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iaload
            tableswitch { // 1 - 6
                    1: 2
                    2: 3
                    3: 4
                    4: 5
                    5: 6
                    6: 7
              default: 8
          }
         2: .line 563
      StackMap locals: long
      StackMap stack:
            lload 2 /* dead */
            l2i
            i2b
            invokestatic jdk.vm.ci.meta.JavaConstant.forByte:(B)Ljdk/vm/ci/meta/PrimitiveConstant;
            areturn
         3: .line 565
      StackMap locals:
      StackMap stack:
            lload 2 /* dead */
            l2i
            i2s
            invokestatic jdk.vm.ci.meta.JavaConstant.forShort:(S)Ljdk/vm/ci/meta/PrimitiveConstant;
            areturn
         4: .line 567
      StackMap locals:
      StackMap stack:
            lload 2 /* dead */
            l2i
            invokestatic jdk.vm.ci.meta.JavaConstant.forInt:(I)Ljdk/vm/ci/meta/PrimitiveConstant;
            areturn
         5: .line 569
      StackMap locals:
      StackMap stack:
            lload 2 /* dead */
            invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
            areturn
         6: .line 571
      StackMap locals:
      StackMap stack:
            lload 2 /* dead */
            l2i
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            invokestatic jdk.vm.ci.meta.JavaConstant.forFloat:(F)Ljdk/vm/ci/meta/PrimitiveConstant;
            areturn
         7: .line 573
      StackMap locals:
      StackMap stack:
            lload 2 /* dead */
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            invokestatic jdk.vm.ci.meta.JavaConstant.forDouble:(D)Ljdk/vm/ci/meta/PrimitiveConstant;
            areturn
         8: .line 575
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 2 // long dead
        end local 1 // jdk.vm.ci.meta.PlatformKind kind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    9     1  kind  Ljdk/vm/ci/meta/PlatformKind;
            1    9     2  dead  J
    MethodParameters:
      Name  Flags
      kind  

  protected jdk.vm.ci.meta.AllocatableValue loadReg(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value val
         0: .line 598
            aload 1 /* val */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isVariable:(Ljdk/vm/ci/meta/Value;)Z
            ifne 2
            aload 1 /* val */
            instanceof jdk.vm.ci.code.RegisterValue
            ifne 2
         1: .line 599
            aload 0 /* this */
            aload 1 /* val */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
         2: .line 601
      StackMap locals:
      StackMap stack:
            aload 1 /* val */
            checkcast jdk.vm.ci.meta.AllocatableValue
            areturn
        end local 1 // jdk.vm.ci.meta.Value val
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    3     1   val  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      val   

  public void emitPause();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
         0: .line 606
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64PauseOp
            dup
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64PauseOp.<init>:()V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         1: .line 607
            return
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;

  public abstract void emitCCall(long, jdk.vm.ci.code.CallingConvention, jdk.vm.ci.meta.Value[]);
    descriptor: (JLjdk/vm/ci/code/CallingConvention;[Ljdk/vm/ci/meta/Value;)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
                         Name  Flags
      address                  
      nativeCallingConvention  
      args                     

  public void emitSpeculationFence();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
         0: .line 613
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64SpeculativeBarrier
            dup
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64SpeculativeBarrier.<init>:()V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         1: .line 614
            return
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;

  public void emitZeroMemory(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
        start local 2 // jdk.vm.ci.meta.Value length
        start local 3 // boolean isAligned
         0: .line 618
            aload 0 /* this */
            aload 1 /* address */
            aload 2 /* length */
            iload 3 /* isAligned */
            iconst_0
            iconst_m1
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitZeroMemory:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;ZZI)V
         1: .line 619
            return
        end local 3 // boolean isAligned
        end local 2 // jdk.vm.ci.meta.Value length
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    2     1    address  Ljdk/vm/ci/meta/Value;
            0    2     2     length  Ljdk/vm/ci/meta/Value;
            0    2     3  isAligned  Z
    MethodParameters:
           Name  Flags
      address    
      length     
      isAligned  

  protected final void emitZeroMemory(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean, boolean, int);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;ZZI)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=8, locals=8, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value address
        start local 2 // jdk.vm.ci.meta.Value length
        start local 3 // boolean isAligned
        start local 4 // boolean useDcZva
        start local 5 // int zvaLength
         0: .line 622
            getstatic jdk.vm.ci.aarch64.AArch64.r0:Ljdk/vm/ci/code/Register;
            aload 1 /* address */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
            astore 6 /* regAddress */
        start local 6 // jdk.vm.ci.code.RegisterValue regAddress
         1: .line 623
            getstatic jdk.vm.ci.aarch64.AArch64.r1:Ljdk/vm/ci/code/Register;
            aload 2 /* length */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            invokevirtual jdk.vm.ci.code.Register.asValue:(Ljdk/vm/ci/meta/ValueKind;)Ljdk/vm/ci/code/RegisterValue;
            astore 7 /* regLength */
        start local 7 // jdk.vm.ci.code.RegisterValue regLength
         2: .line 624
            aload 0 /* this */
            aload 6 /* regAddress */
            aload 1 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
         3: .line 625
            aload 0 /* this */
            aload 7 /* regLength */
            aload 2 /* length */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitMove:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/Value;)V
         4: .line 626
            aload 0 /* this */
            new org.graalvm.compiler.lir.aarch64.AArch64ZeroMemoryOp
            dup
            aload 6 /* regAddress */
            aload 7 /* regLength */
            iload 3 /* isAligned */
            iload 4 /* useDcZva */
            iload 5 /* zvaLength */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ZeroMemoryOp.<init>:(Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;ZZI)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         5: .line 627
            return
        end local 7 // jdk.vm.ci.code.RegisterValue regLength
        end local 6 // jdk.vm.ci.code.RegisterValue regAddress
        end local 5 // int zvaLength
        end local 4 // boolean useDcZva
        end local 3 // boolean isAligned
        end local 2 // jdk.vm.ci.meta.Value length
        end local 1 // jdk.vm.ci.meta.Value address
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64LIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            0    6     1     address  Ljdk/vm/ci/meta/Value;
            0    6     2      length  Ljdk/vm/ci/meta/Value;
            0    6     3   isAligned  Z
            0    6     4    useDcZva  Z
            0    6     5   zvaLength  I
            1    6     6  regAddress  Ljdk/vm/ci/code/RegisterValue;
            2    6     7   regLength  Ljdk/vm/ci/code/RegisterValue;
    MethodParameters:
           Name  Flags
      address    
      length     
      isAligned  
      useDcZva   
      zvaLength  

  public jdk.vm.ci.meta.Value emitValueCompareAndSwap(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Ljdk/vm/ci/meta/Value;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=6, locals=6, args_size=6
         0: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            aload 4
            iload 5
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitValueCompareAndSwap:(Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Lorg/graalvm/compiler/lir/Variable;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int[] $SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 87
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.vm.ci.aarch64.AArch64Kind.values:()[Ljdk/vm/ci/aarch64/AArch64Kind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.BYTE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 6
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iconst_5
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V128_BYTE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 12
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V128_DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 17
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V128_DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 14
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V128_QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 15
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V128_SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 16
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V128_WORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 13
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V32_BYTE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 7
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V32_WORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 8
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V64_BYTE:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 9
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V64_DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 11
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.V64_WORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            bipush 10
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic jdk.vm.ci.aarch64.AArch64Kind.WORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iconst_2
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            dup
            putstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$org$graalvm$compiler$core$common$calc$Condition();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 87
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$Condition:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.compiler.core.common.calc.Condition.values:()[Lorg/graalvm/compiler/core/common/calc/Condition;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.AE:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            bipush 7
            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.core.common.calc.Condition.AT:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            bipush 9
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.BE:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            bipush 8
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.BT:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            bipush 10
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.EQ:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.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.core.common.calc.Condition.GE:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.GT:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.LE:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            iconst_4
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.LT:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            iconst_3
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.graalvm.compiler.core.common.calc.Condition.NE:Lorg/graalvm/compiler/core/common/calc/Condition;
            invokevirtual org.graalvm.compiler.core.common.calc.Condition.ordinal:()I
            iconst_2
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            dup
            putstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$Condition:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$jdk$vm$ci$meta$JavaKind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 87
            getstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.vm.ci.meta.JavaKind.values:()[Ljdk/vm/ci/meta/JavaKind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Boolean:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Byte:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Char:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Double:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 8
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Float:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 6
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Illegal:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 11
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 7
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 9
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Short:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iconst_3
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic jdk.vm.ci.meta.JavaKind.Void:Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            bipush 10
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            dup
            putstatic org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
}
SourceFile: "AArch64LIRGenerator.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final AddressingMode = org.graalvm.compiler.asm.aarch64.AArch64Address$AddressingMode of org.graalvm.compiler.asm.aarch64.AArch64Address
  public final ConditionFlag = org.graalvm.compiler.asm.aarch64.AArch64Assembler$ConditionFlag of org.graalvm.compiler.asm.aarch64.AArch64Assembler
  public JumpOp = org.graalvm.compiler.lir.StandardOp$JumpOp of org.graalvm.compiler.lir.StandardOp
  public final AtomicReadAndAddLSEOp = org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndAddLSEOp of org.graalvm.compiler.lir.aarch64.AArch64AtomicMove
  public final AtomicReadAndAddOp = org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndAddOp of org.graalvm.compiler.lir.aarch64.AArch64AtomicMove
  public final AtomicReadAndWriteOp = org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$AtomicReadAndWriteOp of org.graalvm.compiler.lir.aarch64.AArch64AtomicMove
  public CompareAndSwapOp = org.graalvm.compiler.lir.aarch64.AArch64AtomicMove$CompareAndSwapOp of org.graalvm.compiler.lir.aarch64.AArch64AtomicMove
  public CompareOp = org.graalvm.compiler.lir.aarch64.AArch64Compare$CompareOp of org.graalvm.compiler.lir.aarch64.AArch64Compare
  public FloatCompareOp = org.graalvm.compiler.lir.aarch64.AArch64Compare$FloatCompareOp of org.graalvm.compiler.lir.aarch64.AArch64Compare
  public BranchOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$BranchOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
  public CompareBranchZeroOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CompareBranchZeroOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
  public CondMoveOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondMoveOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
  public CondSetOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$CondSetOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
  public StrategySwitchOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$StrategySwitchOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
  public final TableSwitchOp = org.graalvm.compiler.lir.aarch64.AArch64ControlFlow$TableSwitchOp of org.graalvm.compiler.lir.aarch64.AArch64ControlFlow
  public MembarOp = org.graalvm.compiler.lir.aarch64.AArch64Move$MembarOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public final NullCheckOp = org.graalvm.compiler.lir.aarch64.AArch64Move$NullCheckOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public StackLoadAddressOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StackLoadAddressOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public abstract MoveFactory = org.graalvm.compiler.lir.gen.LIRGeneratorTool$MoveFactory of org.graalvm.compiler.lir.gen.LIRGeneratorTool