public class org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator extends org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator implements org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
  super_class: org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator
{
  private final jdk.vm.ci.meta.AllocatableValue nullRegisterValue;
    descriptor: Ljdk/vm/ci/meta/AllocatableValue;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  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$FloatConvert;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

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

  private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp$ARMv8ConstantCategory;
    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

  private static volatile int[] $SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticLIRGeneratorTool$RoundingMode;
    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 68
            ldc Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            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.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(jdk.vm.ci.meta.AllocatableValue);
    descriptor: (Ljdk/vm/ci/meta/AllocatableValue;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.AllocatableValue nullRegisterValue
         0: .line 70
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.<init>:()V
         1: .line 71
            aload 0 /* this */
            aload 1 /* nullRegisterValue */
            putfield org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.nullRegisterValue:Ljdk/vm/ci/meta/AllocatableValue;
         2: .line 72
            return
        end local 1 // jdk.vm.ci.meta.AllocatableValue nullRegisterValue
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1  nullRegisterValue  Ljdk/vm/ci/meta/AllocatableValue;
    MethodParameters:
                   Name  Flags
      nullRegisterValue  

  public org.graalvm.compiler.core.aarch64.AArch64LIRGenerator getLIRGen();
    descriptor: ()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
         0: .line 78
            aload 0 /* this */
            invokespecial org.graalvm.compiler.lir.gen.ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
            checkcast org.graalvm.compiler.core.aarch64.AArch64LIRGenerator
            areturn
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;

  public boolean mustReplaceNullWithNullRegister(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.JavaConstant nullConstant
         0: .line 83
            aload 0 /* this */
            getfield org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.nullRegisterValue:Ljdk/vm/ci/meta/AllocatableValue;
            ifnull 1
            getstatic jdk.vm.ci.meta.JavaConstant.NULL_POINTER:Ljdk/vm/ci/meta/JavaConstant;
            aload 1 /* nullConstant */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // jdk.vm.ci.meta.JavaConstant nullConstant
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1  nullConstant  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
              Name  Flags
      nullConstant  

  public jdk.vm.ci.meta.AllocatableValue getNullRegisterValue();
    descriptor: ()Ljdk/vm/ci/meta/AllocatableValue;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
         0: .line 87
            aload 0 /* this */
            getfield org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.nullRegisterValue:Ljdk/vm/ci/meta/AllocatableValue;
            areturn
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;

  protected boolean isNumericInteger(jdk.vm.ci.meta.PlatformKind);
    descriptor: (Ljdk/vm/ci/meta/PlatformKind;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.PlatformKind kind
         0: .line 92
            aload 1 /* kind */
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ireturn
        end local 1 // jdk.vm.ci.meta.PlatformKind kind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1  kind  Ljdk/vm/ci/meta/PlatformKind;
    MethodParameters:
      Name  Flags
      kind  

  protected org.graalvm.compiler.lir.Variable emitAdd(org.graalvm.compiler.core.common.LIRKind, 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;Z)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind resultKind
        start local 2 // jdk.vm.ci.meta.Value a
        start local 3 // jdk.vm.ci.meta.Value b
        start local 4 // boolean setFlags
         0: .line 97
            aload 0 /* this */
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifeq 5
         1: .line 98
            iload 4 /* setFlags */
            ifeq 2
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ADDS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            goto 3
      StackMap locals:
      StackMap stack:
         2: getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
         3: astore 5 /* op */
        start local 5 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         4: .line 99
            aload 0 /* this */
            aload 1 /* resultKind */
            aload 5 /* op */
            iconst_1
            aload 2 /* a */
            aload 3 /* b */
            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;
            areturn
        end local 5 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         5: .line 101
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 6
            iload 4 /* setFlags */
            ifeq 6
            new java.lang.AssertionError
            dup
            ldc "Cannot set flags on floating point arithmetic"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* resultKind */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 2 /* a */
            aload 3 /* b */
            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;
            areturn
        end local 4 // boolean setFlags
        end local 3 // jdk.vm.ci.meta.Value b
        end local 2 // jdk.vm.ci.meta.Value a
        end local 1 // org.graalvm.compiler.core.common.LIRKind resultKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    7     1  resultKind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    7     2           a  Ljdk/vm/ci/meta/Value;
            0    7     3           b  Ljdk/vm/ci/meta/Value;
            0    7     4    setFlags  Z
            4    5     5          op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
    MethodParameters:
            Name  Flags
      resultKind  
      a           
      b           
      setFlags    

  protected org.graalvm.compiler.lir.Variable emitSub(org.graalvm.compiler.core.common.LIRKind, 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;Z)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind resultKind
        start local 2 // jdk.vm.ci.meta.Value a
        start local 3 // jdk.vm.ci.meta.Value b
        start local 4 // boolean setFlags
         0: .line 108
            aload 0 /* this */
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifeq 5
         1: .line 109
            iload 4 /* setFlags */
            ifeq 2
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SUBS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            goto 3
      StackMap locals:
      StackMap stack:
         2: getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
         3: astore 5 /* op */
        start local 5 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         4: .line 110
            aload 0 /* this */
            aload 1 /* resultKind */
            aload 5 /* op */
            iconst_0
            aload 2 /* a */
            aload 3 /* b */
            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;
            areturn
        end local 5 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         5: .line 112
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 6
            iload 4 /* setFlags */
            ifeq 6
            new java.lang.AssertionError
            dup
            ldc "Cannot set flags on floating point arithmetic"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 113
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* resultKind */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FSUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 2 /* a */
            aload 3 /* b */
            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;
            areturn
        end local 4 // boolean setFlags
        end local 3 // jdk.vm.ci.meta.Value b
        end local 2 // jdk.vm.ci.meta.Value a
        end local 1 // org.graalvm.compiler.core.common.LIRKind resultKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    7     1  resultKind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    7     2           a  Ljdk/vm/ci/meta/Value;
            0    7     3           b  Ljdk/vm/ci/meta/Value;
            0    7     4    setFlags  Z
            4    5     5          op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
    MethodParameters:
            Name  Flags
      resultKind  
      a           
      b           
      setFlags    

  public jdk.vm.ci.meta.Value emitExtendMemory(boolean, jdk.vm.ci.aarch64.AArch64Kind, int, org.graalvm.compiler.lir.aarch64.AArch64AddressValue, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (ZLjdk/vm/ci/aarch64/AArch64Kind;ILorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=8, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // boolean isSigned
        start local 2 // jdk.vm.ci.aarch64.AArch64Kind memoryKind
        start local 3 // int resultBits
        start local 4 // org.graalvm.compiler.lir.aarch64.AArch64AddressValue address
        start local 5 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 120
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iload 3 /* resultBits */
            bipush 32
            if_icmpne 1
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            goto 2
      StackMap locals:
      StackMap stack: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator
         1: getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator int jdk.vm.ci.aarch64.AArch64Kind int org.graalvm.compiler.lir.aarch64.AArch64AddressValue org.graalvm.compiler.lir.LIRFrameState
      StackMap stack: org.graalvm.compiler.core.aarch64.AArch64LIRGenerator jdk.vm.ci.aarch64.AArch64Kind
         2: 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
         3: .line 122
            iload 3 /* resultBits */
            bipush 32
            if_icmpgt 4
            bipush 32
            goto 5
      StackMap locals: org.graalvm.compiler.lir.Variable
      StackMap stack:
         4: bipush 64
      StackMap locals:
      StackMap stack: int
         5: istore 7 /* targetSize */
        start local 7 // int targetSize
         6: .line 123
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind:()[I
            aload 2 /* memoryKind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 7
                    2: 7
                    3: 7
                    4: 7
              default: 11
          }
         7: .line 128
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64Unary$MemoryOp
            dup
            iload 1 /* isSigned */
            iload 7 /* targetSize */
         8: .line 129
            aload 2 /* memoryKind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
            bipush 8
            imul
            aload 6 /* result */
            aload 4 /* address */
            aload 5 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Unary$MemoryOp.<init>:(ZIILjdk/vm/ci/meta/AllocatableValue;Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Lorg/graalvm/compiler/lir/LIRFrameState;)V
         9: .line 128
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        10: .line 130
            goto 12
        11: .line 132
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        12: .line 134
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            areturn
        end local 7 // int targetSize
        end local 6 // org.graalvm.compiler.lir.Variable result
        end local 5 // org.graalvm.compiler.lir.LIRFrameState state
        end local 4 // org.graalvm.compiler.lir.aarch64.AArch64AddressValue address
        end local 3 // int resultBits
        end local 2 // jdk.vm.ci.aarch64.AArch64Kind memoryKind
        end local 1 // boolean isSigned
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0   13     1    isSigned  Z
            0   13     2  memoryKind  Ljdk/vm/ci/aarch64/AArch64Kind;
            0   13     3  resultBits  I
            0   13     4     address  Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
            0   13     5       state  Lorg/graalvm/compiler/lir/LIRFrameState;
            3   13     6      result  Lorg/graalvm/compiler/lir/Variable;
            6   13     7  targetSize  I
    MethodParameters:
            Name  Flags
      isSigned    
      memoryKind  
      resultBits  
      address     
      state       

  public jdk.vm.ci.meta.Value emitMul(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, boolean);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Z)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // boolean setFlags
         0: .line 139
            iload 3 /* setFlags */
            ifeq 1
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MULVS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MUL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
         2: astore 4 /* intOp */
        start local 4 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp intOp
         3: .line 140
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            aload 0 /* this */
            aload 1 /* a */
            aload 4 /* intOp */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMUL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getOpCode:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;)Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 4 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp intOp
        end local 3 // boolean setFlags
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1         a  Ljdk/vm/ci/meta/Value;
            0    4     2         b  Ljdk/vm/ci/meta/Value;
            0    4     3  setFlags  Z
            3    4     4     intOp  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
    MethodParameters:
          Name  Flags
      a         
      b         
      setFlags  

  public jdk.vm.ci.meta.Value emitMulHigh(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 145
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.SMULH:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitUMulHigh(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 151
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.UMULH:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitMNeg(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 156
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifeq 1
            aload 0 /* this */
            aload 2 /* b */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.MNEG:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1     a  Ljdk/vm/ci/meta/Value;
            0    3     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitDiv(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 162
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            aload 0 /* this */
            aload 1 /* a */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.DIV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FDIV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getOpCode:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;)Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 2 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            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;
            areturn
        end local 3 // org.graalvm.compiler.lir.LIRFrameState state
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1      a  Ljdk/vm/ci/meta/Value;
            0    1     2      b  Ljdk/vm/ci/meta/Value;
            0    1     3  state  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
       Name  Flags
      a      
      b      
      state  

  public jdk.vm.ci.meta.Value emitRem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 167
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifeq 2
         1: .line 168
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.REM:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 2 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            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;
            areturn
         2: .line 170
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$aarch64$AArch64Kind:()[I
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.ordinal:()I
            iaload
            tableswitch { // 5 - 6
                    5: 3
                    6: 5
              default: 7
          }
         3: .line 172
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.getForeignCalls:()Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
            getstatic org.graalvm.compiler.core.target.Backend.ARITHMETIC_FREM:Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
            astore 4 /* fremCall */
        start local 4 // org.graalvm.compiler.core.common.spi.ForeignCallLinkage fremCall
         4: .line 173
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 4 /* fremCall */
            aload 3 /* state */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            aastore
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Lorg/graalvm/compiler/lir/LIRFrameState;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 4 // org.graalvm.compiler.core.common.spi.ForeignCallLinkage fremCall
         5: .line 175
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.getForeignCalls:()Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
            getstatic org.graalvm.compiler.core.target.Backend.ARITHMETIC_DREM:Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;
            invokeinterface org.graalvm.compiler.core.common.spi.ForeignCallsProvider.lookupForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallSignature;)Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
            astore 5 /* dremCall */
        start local 5 // org.graalvm.compiler.core.common.spi.ForeignCallLinkage dremCall
         6: .line 176
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 5 /* dremCall */
            aload 3 /* state */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            aastore
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.emitForeignCall:(Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;Lorg/graalvm/compiler/lir/LIRFrameState;[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 5 // org.graalvm.compiler.core.common.spi.ForeignCallLinkage dremCall
         7: .line 178
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "emitRem on unexpected kind "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            pop
         8: .line 179
            aconst_null
            areturn
        end local 3 // org.graalvm.compiler.lir.LIRFrameState state
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    9     1         a  Ljdk/vm/ci/meta/Value;
            0    9     2         b  Ljdk/vm/ci/meta/Value;
            0    9     3     state  Lorg/graalvm/compiler/lir/LIRFrameState;
            4    5     4  fremCall  Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
            6    7     5  dremCall  Lorg/graalvm/compiler/core/common/spi/ForeignCallLinkage;
    MethodParameters:
       Name  Flags
      a      
      b      
      state  

  public jdk.vm.ci.meta.Value emitUDiv(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 186
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.UDIV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 2 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            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;
            areturn
        end local 3 // org.graalvm.compiler.lir.LIRFrameState state
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1      a  Ljdk/vm/ci/meta/Value;
            0    2     2      b  Ljdk/vm/ci/meta/Value;
            0    2     3  state  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
       Name  Flags
      a      
      b      
      state  

  public jdk.vm.ci.meta.Value emitURem(jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 192
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 193
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.UREM:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 2 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            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;
            areturn
        end local 3 // org.graalvm.compiler.lir.LIRFrameState state
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1      a  Ljdk/vm/ci/meta/Value;
            0    2     2      b  Ljdk/vm/ci/meta/Value;
            0    2     3  state  Lorg/graalvm/compiler/lir/LIRFrameState;
    MethodParameters:
       Name  Flags
      a      
      b      
      state  

  public jdk.vm.ci.meta.Value emitAnd(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 198
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.AND:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitOr(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 204
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 205
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.OR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitXor(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 210
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.XOR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitShl(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 216
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.SHL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitShr(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 222
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 223
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.ASHR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitUShr(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 228
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 229
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.LSHR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_0
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1     a  Ljdk/vm/ci/meta/Value;
            0    2     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitFloatConvert(org.graalvm.compiler.core.common.calc.FloatConvert, jdk.vm.ci.meta.Value);
    descriptor: (Lorg/graalvm/compiler/core/common/calc/FloatConvert;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.calc.FloatConvert op
        start local 2 // jdk.vm.ci.meta.Value inputVal
         0: .line 234
            aload 1 /* op */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getFloatConvertResultKind:(Lorg/graalvm/compiler/core/common/calc/FloatConvert;)Ljdk/vm/ci/meta/PlatformKind;
            astore 3 /* resultPlatformKind */
        start local 3 // jdk.vm.ci.meta.PlatformKind resultPlatformKind
         1: .line 235
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 2 /* inputVal */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            aload 3 /* resultPlatformKind */
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            astore 4 /* resultLirKind */
        start local 4 // org.graalvm.compiler.core.common.LIRKind resultLirKind
         2: .line 236
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 4 /* resultLirKind */
            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
         3: .line 237
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.core.aarch64.AArch64FloatConvertOp
            dup
            aload 1 /* op */
            aload 5 /* result */
            aload 0 /* this */
            aload 2 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.core.aarch64.AArch64FloatConvertOp.<init>:(Lorg/graalvm/compiler/core/common/calc/FloatConvert;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
         4: .line 238
            aload 5 /* result */
            areturn
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // org.graalvm.compiler.core.common.LIRKind resultLirKind
        end local 3 // jdk.vm.ci.meta.PlatformKind resultPlatformKind
        end local 2 // jdk.vm.ci.meta.Value inputVal
        end local 1 // org.graalvm.compiler.core.common.calc.FloatConvert op
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    5     1                  op  Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            0    5     2            inputVal  Ljdk/vm/ci/meta/Value;
            1    5     3  resultPlatformKind  Ljdk/vm/ci/meta/PlatformKind;
            2    5     4       resultLirKind  Lorg/graalvm/compiler/core/common/LIRKind;
            3    5     5              result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
          Name  Flags
      op        
      inputVal  

  jdk.vm.ci.meta.Value emitIntegerMAdd(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)Ljdk/vm/ci/meta/Value;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // jdk.vm.ci.meta.Value c
        start local 4 // boolean isI2L
         0: .line 242
            aload 0 /* this */
            iload 4 /* isI2L */
            ifeq 1
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMADDL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            goto 2
      StackMap locals:
      StackMap stack: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
         1: getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int
      StackMap stack: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
         2: aload 1 /* a */
            aload 2 /* b */
            aload 3 /* c */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitMultiplyAddSub:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            areturn
        end local 4 // boolean isI2L
        end local 3 // jdk.vm.ci.meta.Value c
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1      a  Ljdk/vm/ci/meta/Value;
            0    3     2      b  Ljdk/vm/ci/meta/Value;
            0    3     3      c  Ljdk/vm/ci/meta/Value;
            0    3     4  isI2L  Z
    MethodParameters:
       Name  Flags
      a      
      b      
      c      
      isI2L  

  jdk.vm.ci.meta.Value emitIntegerMSub(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)Ljdk/vm/ci/meta/Value;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // jdk.vm.ci.meta.Value c
        start local 4 // boolean isI2L
         0: .line 246
            aload 0 /* this */
            iload 4 /* isI2L */
            ifeq 1
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMSUBL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            goto 2
      StackMap locals:
      StackMap stack: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator
         1: getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MSUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
      StackMap locals: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value jdk.vm.ci.meta.Value int
      StackMap stack: org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
         2: aload 1 /* a */
            aload 2 /* b */
            aload 3 /* c */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitMultiplyAddSub:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            areturn
        end local 4 // boolean isI2L
        end local 3 // jdk.vm.ci.meta.Value c
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1      a  Ljdk/vm/ci/meta/Value;
            0    3     2      b  Ljdk/vm/ci/meta/Value;
            0    3     3      c  Ljdk/vm/ci/meta/Value;
            0    3     4  isI2L  Z
    MethodParameters:
       Name  Flags
      a      
      b      
      c      
      isI2L  

  private jdk.vm.ci.meta.Value emitMultiplyAddSub(org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
    descriptor: (Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=9, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        start local 2 // jdk.vm.ci.meta.Value a
        start local 3 // jdk.vm.ci.meta.Value b
        start local 4 // jdk.vm.ci.meta.Value c
         0: .line 250
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            aload 3 /* b */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 252
      StackMap locals:
      StackMap stack:
            aload 1 /* op */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMADDL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            if_acmpeq 2
            aload 1 /* op */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMSUBL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            if_acmpne 5
         2: .line 254
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 3
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            aload 4 /* c */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            if_acmpne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 4 /* c */
            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 5 /* result */
        start local 5 // org.graalvm.compiler.lir.Variable result
         4: .line 256
            goto 11
        end local 5 // org.graalvm.compiler.lir.Variable result
         5: .line 257
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 6
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            aload 4 /* c */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            if_acmpeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 258
      StackMap locals:
      StackMap stack:
            aload 1 /* op */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            if_acmpne 8
         7: .line 260
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 10
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 10
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 263
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 9
            aload 1 /* op */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            if_acmpeq 9
            aload 1 /* op */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MSUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            if_acmpeq 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 264
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 10
            aload 0 /* this */
            aload 2 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 266
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_3
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 2 /* a */
            aastore
            dup
            iconst_1
            aload 3 /* b */
            aastore
            dup
            iconst_2
            aload 4 /* c */
            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 5 /* result */
        start local 5 // org.graalvm.compiler.lir.Variable result
        11: .line 269
      StackMap locals: org.graalvm.compiler.lir.Variable
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 2 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 6 /* x */
        start local 6 // jdk.vm.ci.meta.AllocatableValue x
        12: .line 270
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 7 /* y */
        start local 7 // jdk.vm.ci.meta.AllocatableValue y
        13: .line 271
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* c */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 8 /* z */
        start local 8 // jdk.vm.ci.meta.AllocatableValue z
        14: .line 272
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$MultiplyAddSubOp
            dup
            aload 1 /* op */
            aload 5 /* result */
            aload 6 /* x */
            aload 7 /* y */
            aload 8 /* z */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$MultiplyAddSubOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;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
        15: .line 273
            aload 5 /* result */
            areturn
        end local 8 // jdk.vm.ci.meta.AllocatableValue z
        end local 7 // jdk.vm.ci.meta.AllocatableValue y
        end local 6 // jdk.vm.ci.meta.AllocatableValue x
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // jdk.vm.ci.meta.Value c
        end local 3 // jdk.vm.ci.meta.Value b
        end local 2 // jdk.vm.ci.meta.Value a
        end local 1 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0   16     1      op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0   16     2       a  Ljdk/vm/ci/meta/Value;
            0   16     3       b  Ljdk/vm/ci/meta/Value;
            0   16     4       c  Ljdk/vm/ci/meta/Value;
            4    5     5  result  Lorg/graalvm/compiler/lir/Variable;
           11   16     5  result  Lorg/graalvm/compiler/lir/Variable;
           12   16     6       x  Ljdk/vm/ci/meta/AllocatableValue;
           13   16     7       y  Ljdk/vm/ci/meta/AllocatableValue;
           14   16     8       z  Ljdk/vm/ci/meta/AllocatableValue;
    MethodParameters:
      Name  Flags
      op    
      a     
      b     
      c     

  private static jdk.vm.ci.meta.PlatformKind getFloatConvertResultKind(org.graalvm.compiler.core.common.calc.FloatConvert);
    descriptor: (Lorg/graalvm/compiler/core/common/calc/FloatConvert;)Ljdk/vm/ci/meta/PlatformKind;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.calc.FloatConvert op
         0: .line 277
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:()[I
            aload 0 /* op */
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
            iaload
            tableswitch { // 1 - 10
                    1: 1
                    2: 1
                    3: 2
                    4: 2
                    5: 3
                    6: 3
                    7: 3
                    8: 4
                    9: 4
                   10: 4
              default: 5
          }
         1: .line 280
      StackMap locals:
      StackMap stack:
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            areturn
         2: .line 283
      StackMap locals:
      StackMap stack:
            getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            areturn
         3: .line 287
      StackMap locals:
      StackMap stack:
            getstatic jdk.vm.ci.aarch64.AArch64Kind.SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            areturn
         4: .line 291
      StackMap locals:
      StackMap stack:
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            areturn
         5: .line 293
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 0 // org.graalvm.compiler.core.common.calc.FloatConvert op
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0    op  Lorg/graalvm/compiler/core/common/calc/FloatConvert;
    MethodParameters:
      Name  Flags
      op    

  public jdk.vm.ci.meta.Value emitReinterpret(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value);
    descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind to
        start local 2 // jdk.vm.ci.meta.Value inputVal
         0: .line 299
            aload 2 /* inputVal */
            invokevirtual jdk.vm.ci.meta.Value.getValueKind:()Ljdk/vm/ci/meta/ValueKind;
            astore 3 /* from */
        start local 3 // jdk.vm.ci.meta.ValueKind from
         1: .line 300
            aload 1 /* to */
            aload 3 /* from */
            invokevirtual org.graalvm.compiler.core.common.LIRKind.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 301
            aload 2 /* inputVal */
            areturn
         3: .line 303
      StackMap locals: jdk.vm.ci.meta.ValueKind
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 1 /* to */
            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
         4: .line 304
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64ReinterpretOp
            dup
            aload 4 /* result */
            aload 0 /* this */
            aload 2 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ReinterpretOp.<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
         5: .line 305
            aload 4 /* result */
            areturn
        end local 4 // org.graalvm.compiler.lir.Variable result
        end local 3 // jdk.vm.ci.meta.ValueKind from
        end local 2 // jdk.vm.ci.meta.Value inputVal
        end local 1 // org.graalvm.compiler.core.common.LIRKind to
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    6     1        to  Lorg/graalvm/compiler/core/common/LIRKind;
            0    6     2  inputVal  Ljdk/vm/ci/meta/Value;
            1    6     3      from  Ljdk/vm/ci/meta/ValueKind<*>;
            4    6     4    result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
          Name  Flags
      to        
      inputVal  

  public jdk.vm.ci.meta.Value emitNarrow(jdk.vm.ci.meta.Value, int);
    descriptor: (Ljdk/vm/ci/meta/Value;I)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=7, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value inputVal
        start local 2 // int bits
         0: .line 310
            aload 1 /* inputVal */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpne 5
            iload 2 /* bits */
            bipush 32
            if_icmpgt 5
         1: .line 311
            iload 2 /* bits */
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* inputVal */
            aastore
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getResultLirKind:(I[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            astore 3 /* resultKind */
        start local 3 // org.graalvm.compiler.core.common.LIRKind resultKind
         2: .line 312
            iload 2 /* bits */
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            lstore 4 /* mask */
        start local 4 // long mask
         3: .line 313
            new org.graalvm.compiler.lir.ConstantValue
            dup
            aload 3 /* resultKind */
            lload 4 /* mask */
            invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
            invokespecial org.graalvm.compiler.lir.ConstantValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)V
            astore 6 /* maskValue */
        start local 6 // jdk.vm.ci.meta.Value maskValue
         4: .line 314
            aload 0 /* this */
            aload 3 /* resultKind */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.AND:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* inputVal */
            aload 6 /* maskValue */
            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;
            areturn
        end local 6 // jdk.vm.ci.meta.Value maskValue
        end local 4 // long mask
        end local 3 // org.graalvm.compiler.core.common.LIRKind resultKind
         5: .line 316
      StackMap locals:
      StackMap stack:
            aload 1 /* inputVal */
            areturn
        end local 2 // int bits
        end local 1 // jdk.vm.ci.meta.Value inputVal
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    6     1    inputVal  Ljdk/vm/ci/meta/Value;
            0    6     2        bits  I
            2    5     3  resultKind  Lorg/graalvm/compiler/core/common/LIRKind;
            3    5     4        mask  J
            4    5     6   maskValue  Ljdk/vm/ci/meta/Value;
    MethodParameters:
          Name  Flags
      inputVal  
      bits      

  public jdk.vm.ci.meta.Value emitZeroExtend(jdk.vm.ci.meta.Value, int, int);
    descriptor: (Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value inputVal
        start local 2 // int fromBits
        start local 3 // int toBits
         0: .line 322
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 2
            iload 2 /* fromBits */
            iload 3 /* toBits */
            if_icmpgt 1
            iload 3 /* toBits */
            bipush 64
            if_icmple 2
      StackMap locals:
      StackMap stack:
         1: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 323
      StackMap locals:
      StackMap stack:
            iload 2 /* fromBits */
            iload 3 /* toBits */
            if_icmpne 4
         3: .line 324
            aload 1 /* inputVal */
            areturn
         4: .line 326
      StackMap locals:
      StackMap stack:
            iload 3 /* toBits */
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* inputVal */
            aastore
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getResultLirKind:(I[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            astore 4 /* resultKind */
        start local 4 // org.graalvm.compiler.core.common.LIRKind resultKind
         5: .line 327
            iload 2 /* fromBits */
            invokestatic org.graalvm.compiler.core.common.NumUtil.getNbitNumberLong:(I)J
            lstore 5 /* mask */
        start local 5 // long mask
         6: .line 328
            new org.graalvm.compiler.lir.ConstantValue
            dup
            aload 4 /* resultKind */
            lload 5 /* mask */
            invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
            invokespecial org.graalvm.compiler.lir.ConstantValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)V
            astore 7 /* maskValue */
        start local 7 // jdk.vm.ci.meta.Value maskValue
         7: .line 329
            aload 0 /* this */
            aload 4 /* resultKind */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.AND:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* inputVal */
            aload 7 /* maskValue */
            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;
            areturn
        end local 7 // jdk.vm.ci.meta.Value maskValue
        end local 5 // long mask
        end local 4 // org.graalvm.compiler.core.common.LIRKind resultKind
        end local 3 // int toBits
        end local 2 // int fromBits
        end local 1 // jdk.vm.ci.meta.Value inputVal
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    8     1    inputVal  Ljdk/vm/ci/meta/Value;
            0    8     2    fromBits  I
            0    8     3      toBits  I
            5    8     4  resultKind  Lorg/graalvm/compiler/core/common/LIRKind;
            6    8     5        mask  J
            7    8     7   maskValue  Ljdk/vm/ci/meta/Value;
    MethodParameters:
          Name  Flags
      inputVal  
      fromBits  
      toBits    

  public jdk.vm.ci.meta.Value emitSignExtend(jdk.vm.ci.meta.Value, int, int);
    descriptor: (Ljdk/vm/ci/meta/Value;II)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value inputVal
        start local 2 // int fromBits
        start local 3 // int toBits
         0: .line 334
            iload 3 /* toBits */
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* inputVal */
            aastore
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getResultLirKind:(I[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            astore 4 /* resultKind */
        start local 4 // org.graalvm.compiler.core.common.LIRKind resultKind
         1: .line 335
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 3
            iload 2 /* fromBits */
            iload 3 /* toBits */
            if_icmpgt 2
            iload 3 /* toBits */
            bipush 64
            if_icmple 3
      StackMap locals: org.graalvm.compiler.core.common.LIRKind
      StackMap stack:
         2: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 336
      StackMap locals:
      StackMap stack:
            iload 2 /* fromBits */
            iload 3 /* toBits */
            if_icmpne 5
         4: .line 337
            aload 1 /* inputVal */
            areturn
         5: .line 338
      StackMap locals:
      StackMap stack:
            aload 1 /* inputVal */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 13
         6: .line 339
            aload 1 /* inputVal */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            astore 5 /* javaConstant */
        start local 5 // jdk.vm.ci.meta.JavaConstant javaConstant
         7: .line 341
            aload 5 /* javaConstant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifeq 10
         8: .line 342
            lconst_0
            lstore 6 /* constant */
        start local 6 // long constant
         9: .line 343
            goto 11
        end local 6 // long constant
        10: .line 344
      StackMap locals: jdk.vm.ci.meta.JavaConstant
      StackMap stack:
            aload 5 /* javaConstant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lstore 6 /* constant */
        start local 6 // long constant
        11: .line 346
      StackMap locals: long
      StackMap stack:
            getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.getSizeInBytes:()I
            bipush 8
            imul
            iload 2 /* fromBits */
            isub
            istore 8 /* shiftCount */
        start local 8 // int shiftCount
        12: .line 347
            new org.graalvm.compiler.lir.ConstantValue
            dup
            aload 4 /* resultKind */
            lload 6 /* constant */
            iload 8 /* shiftCount */
            lshl
            iload 8 /* shiftCount */
            lshr
            invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
            invokespecial org.graalvm.compiler.lir.ConstantValue.<init>:(Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Constant;)V
            areturn
        end local 8 // int shiftCount
        end local 6 // long constant
        end local 5 // jdk.vm.ci.meta.JavaConstant javaConstant
        13: .line 349
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 4 /* resultKind */
            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
        14: .line 350
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64SignExtendOp
            dup
            aload 5 /* result */
            aload 0 /* this */
            aload 1 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            iload 2 /* fromBits */
            iload 3 /* toBits */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64SignExtendOp.<init>:(Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;II)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
        15: .line 351
            aload 5 /* result */
            areturn
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // org.graalvm.compiler.core.common.LIRKind resultKind
        end local 3 // int toBits
        end local 2 // int fromBits
        end local 1 // jdk.vm.ci.meta.Value inputVal
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   16     0          this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0   16     1      inputVal  Ljdk/vm/ci/meta/Value;
            0   16     2      fromBits  I
            0   16     3        toBits  I
            1   16     4    resultKind  Lorg/graalvm/compiler/core/common/LIRKind;
            7   13     5  javaConstant  Ljdk/vm/ci/meta/JavaConstant;
            9   10     6      constant  J
           11   13     6      constant  J
           12   13     8    shiftCount  I
           14   16     5        result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
          Name  Flags
      inputVal  
      fromBits  
      toBits    

  private static org.graalvm.compiler.core.common.LIRKind getResultLirKind(int, jdk.vm.ci.meta.Value[]);
    descriptor: (I[Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
    flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int resultBitSize
        start local 1 // jdk.vm.ci.meta.Value[] inputValues
         0: .line 355
            iload 0 /* resultBitSize */
            bipush 64
            if_icmpne 2
         1: .line 356
            aload 1 /* inputValues */
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.QWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            areturn
         2: .line 360
      StackMap locals:
      StackMap stack:
            aload 1 /* inputValues */
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(Ljdk/vm/ci/meta/PlatformKind;)Lorg/graalvm/compiler/core/common/LIRKind;
            areturn
        end local 1 // jdk.vm.ci.meta.Value[] inputValues
        end local 0 // int resultBitSize
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0  resultBitSize  I
            0    3     1    inputValues  [Ljdk/vm/ci/meta/Value;
    MethodParameters:
               Name  Flags
      resultBitSize  
      inputValues    

  protected org.graalvm.compiler.lir.Variable emitBinary(jdk.vm.ci.meta.ValueKind<?>, org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, boolean, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
    descriptor: (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;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.ValueKind resultKind
        start local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        start local 3 // boolean commutative
        start local 4 // jdk.vm.ci.meta.Value a
        start local 5 // jdk.vm.ci.meta.Value b
         0: .line 365
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 1 /* resultKind */
            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 366
            aload 2 /* op */
            aload 4 /* a */
            aload 5 /* b */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isValidBinaryConstant:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
            ifeq 4
         2: .line 367
            aload 0 /* this */
            aload 6 /* result */
            aload 2 /* op */
            aload 0 /* this */
            aload 4 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 5 /* b */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
         3: .line 368
            goto 8
      StackMap locals: org.graalvm.compiler.lir.Variable
      StackMap stack:
         4: iload 3 /* commutative */
            ifeq 7
            aload 2 /* op */
            aload 5 /* b */
            aload 4 /* a */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isValidBinaryConstant:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
            ifeq 7
         5: .line 369
            aload 0 /* this */
            aload 6 /* result */
            aload 2 /* op */
            aload 0 /* this */
            aload 5 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 4 /* a */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitBinaryConst:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
         6: .line 370
            goto 8
         7: .line 371
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* result */
            aload 2 /* op */
            aload 0 /* this */
            aload 4 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            aload 0 /* this */
            aload 5 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitBinaryVar:(Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
         8: .line 373
      StackMap locals:
      StackMap stack:
            aload 6 /* result */
            areturn
        end local 6 // org.graalvm.compiler.lir.Variable result
        end local 5 // jdk.vm.ci.meta.Value b
        end local 4 // jdk.vm.ci.meta.Value a
        end local 3 // boolean commutative
        end local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        end local 1 // jdk.vm.ci.meta.ValueKind resultKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    9     1   resultKind  Ljdk/vm/ci/meta/ValueKind<*>;
            0    9     2           op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0    9     3  commutative  Z
            0    9     4            a  Ljdk/vm/ci/meta/Value;
            0    9     5            b  Ljdk/vm/ci/meta/Value;
            1    9     6       result  Lorg/graalvm/compiler/lir/Variable;
    Signature: (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;
    MethodParameters:
             Name  Flags
      resultKind   
      op           
      commutative  
      a            
      b            

  private void emitBinaryVar(org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.AllocatableValue);
    descriptor: (Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.lir.Variable result
        start local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        start local 3 // jdk.vm.ci.meta.AllocatableValue a
        start local 4 // jdk.vm.ci.meta.AllocatableValue b
         0: .line 377
            aload 0 /* this */
            aload 3 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 5 /* x */
        start local 5 // jdk.vm.ci.meta.AllocatableValue x
         1: .line 378
            aload 0 /* this */
            aload 4 /* b */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 6 /* y */
        start local 6 // jdk.vm.ci.meta.AllocatableValue y
         2: .line 379
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp:()[I
            aload 2 /* op */
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            iaload
            tableswitch { // 20 - 22
                   20: 3
                   21: 5
                   22: 3
              default: 5
          }
         3: .line 382
      StackMap locals: jdk.vm.ci.meta.AllocatableValue jdk.vm.ci.meta.AllocatableValue
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryCompositeOp
            dup
            aload 2 /* op */
            aload 1 /* result */
            aload 5 /* x */
            aload 6 /* y */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryCompositeOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;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
         4: .line 383
            goto 6
         5: .line 385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryOp
            dup
            aload 2 /* op */
            aload 1 /* result */
            aload 5 /* x */
            aload 6 /* y */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;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
         6: .line 388
      StackMap locals:
      StackMap stack:
            return
        end local 6 // jdk.vm.ci.meta.AllocatableValue y
        end local 5 // jdk.vm.ci.meta.AllocatableValue x
        end local 4 // jdk.vm.ci.meta.AllocatableValue b
        end local 3 // jdk.vm.ci.meta.AllocatableValue a
        end local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        end local 1 // org.graalvm.compiler.lir.Variable result
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    7     1  result  Lorg/graalvm/compiler/lir/Variable;
            0    7     2      op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0    7     3       a  Ljdk/vm/ci/meta/AllocatableValue;
            0    7     4       b  Ljdk/vm/ci/meta/AllocatableValue;
            1    7     5       x  Ljdk/vm/ci/meta/AllocatableValue;
            2    7     6       y  Ljdk/vm/ci/meta/AllocatableValue;
    MethodParameters:
        Name  Flags
      result  
      op      
      a       
      b       

  public void emitBinaryConst(org.graalvm.compiler.lir.Variable, org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, jdk.vm.ci.meta.AllocatableValue, jdk.vm.ci.meta.JavaConstant);
    descriptor: (Lorg/graalvm/compiler/lir/Variable;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.lir.Variable result
        start local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        start local 3 // jdk.vm.ci.meta.AllocatableValue a
        start local 4 // jdk.vm.ci.meta.JavaConstant b
         0: .line 391
            aload 0 /* this */
            aload 3 /* a */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 5 /* x */
        start local 5 // jdk.vm.ci.meta.AllocatableValue x
         1: .line 392
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryConstOp
            dup
            aload 2 /* op */
            aload 1 /* result */
            aload 5 /* x */
            aload 4 /* b */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryConstOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/JavaConstant;)V
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.append:(Lorg/graalvm/compiler/lir/LIRInstruction;)Lorg/graalvm/compiler/lir/LIRInstruction;
            pop
         2: .line 393
            return
        end local 5 // jdk.vm.ci.meta.AllocatableValue x
        end local 4 // jdk.vm.ci.meta.JavaConstant b
        end local 3 // jdk.vm.ci.meta.AllocatableValue a
        end local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        end local 1 // org.graalvm.compiler.lir.Variable result
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1  result  Lorg/graalvm/compiler/lir/Variable;
            0    3     2      op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0    3     3       a  Ljdk/vm/ci/meta/AllocatableValue;
            0    3     4       b  Ljdk/vm/ci/meta/JavaConstant;
            1    3     5       x  Ljdk/vm/ci/meta/AllocatableValue;
    MethodParameters:
        Name  Flags
      result  
      op      
      a       
      b       

  private static boolean isValidBinaryConstant(org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value);
    descriptor: (Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 396
            aload 2 /* b */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifne 2
         1: .line 397
            iconst_0
            ireturn
         2: .line 399
      StackMap locals:
      StackMap stack:
            aload 2 /* b */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            astore 3 /* constValue */
        start local 3 // jdk.vm.ci.meta.JavaConstant constValue
         3: .line 400
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp$ARMv8ConstantCategory:()[I
            aload 0 /* op */
            getfield org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.category:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp$ARMv8ConstantCategory;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.ordinal:()I
            iaload
            tableswitch { // 1 - 4
                    1: 9
                    2: 4
                    3: 5
                    4: 6
              default: 10
          }
         4: .line 402
      StackMap locals: jdk.vm.ci.meta.JavaConstant
      StackMap stack:
            aload 3 /* constValue */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isLogicalConstant:(Ljdk/vm/ci/meta/JavaConstant;)Z
            ireturn
         5: .line 404
      StackMap locals:
      StackMap stack:
            aload 3 /* constValue */
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isArithmeticConstant:(Ljdk/vm/ci/meta/JavaConstant;)Z
            ireturn
         6: .line 406
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 8
            aload 3 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lconst_0
            lcmp
            iflt 7
            aload 3 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokeinterface jdk.vm.ci.meta.PlatformKind.getSizeInBytes:()I
            bipush 8
            imul
            i2l
            lcmp
            iflt 8
      StackMap locals:
      StackMap stack:
         7: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 407
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         9: .line 409
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        10: .line 411
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        end local 3 // jdk.vm.ci.meta.JavaConstant constValue
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0          op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0   11     1           a  Ljdk/vm/ci/meta/Value;
            0   11     2           b  Ljdk/vm/ci/meta/Value;
            3   11     3  constValue  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
      Name  Flags
      op    
      a     
      b     

  private static boolean isLogicalConstant(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaConstant constValue
         0: .line 416
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 0 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 5 - 7
                    5: 1
                    6: 3
                    7: 2
              default: 3
          }
         1: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isLogicalImmediate:(I)Z
            ireturn
         2: .line 420
      StackMap locals:
      StackMap stack:
            aload 0 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isLogicalImmediate:(J)Z
            ireturn
         3: .line 422
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // jdk.vm.ci.meta.JavaConstant constValue
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0  constValue  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
            Name  Flags
      constValue  

  protected static boolean isArithmeticConstant(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Z
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.vm.ci.meta.JavaConstant constValue
         0: .line 427
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$jdk$vm$ci$meta$JavaKind:()[I
            aload 0 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.ordinal:()I
            iaload
            tableswitch { // 5 - 9
                    5: 1
                    6: 3
                    7: 1
                    8: 3
                    9: 2
              default: 3
          }
         1: .line 430
      StackMap locals:
      StackMap stack:
            aload 0 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            invokestatic org.graalvm.compiler.asm.aarch64.AArch64MacroAssembler.isArithmeticImmediate:(J)Z
            ireturn
         2: .line 432
      StackMap locals:
      StackMap stack:
            aload 0 /* constValue */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ireturn
         3: .line 434
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // jdk.vm.ci.meta.JavaConstant constValue
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0  constValue  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
            Name  Flags
      constValue  

  public jdk.vm.ci.meta.Value emitNegate(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value inputVal
         0: .line 440
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* inputVal */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.NEG:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FNEG:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getOpCode:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;)Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            aload 1 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitUnary:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 1 // jdk.vm.ci.meta.Value inputVal
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1  inputVal  Ljdk/vm/ci/meta/Value;
    MethodParameters:
          Name  Flags
      inputVal  

  public jdk.vm.ci.meta.Value emitNot(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value input
         0: .line 445
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            aload 1 /* input */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 446
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.NOT:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            aload 1 /* input */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitUnary:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 1 // jdk.vm.ci.meta.Value input
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    2     1  input  Ljdk/vm/ci/meta/Value;
    MethodParameters:
       Name  Flags
      input  

  public jdk.vm.ci.meta.Value emitMathAbs(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value input
         0: .line 451
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* input */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ABS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FABS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getOpCode:(Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;)Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            aload 1 /* input */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitUnary:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 1 // jdk.vm.ci.meta.Value input
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1  input  Ljdk/vm/ci/meta/Value;
    MethodParameters:
       Name  Flags
      input  

  public jdk.vm.ci.meta.Value emitMathMax(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 456
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            aload 2 /* b */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 457
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 3
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 3
         2: .line 458
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 459
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.FMAX:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1     a  Ljdk/vm/ci/meta/Value;
            0    4     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitMathMin(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
         0: .line 464
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            aload 2 /* b */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 465
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 3
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 3
         2: .line 466
            aload 1 /* a */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 467
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* a */
            aastore
            dup
            iconst_1
            aload 2 /* b */
            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.FMIN:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            iconst_1
            aload 1 /* a */
            aload 2 /* b */
            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;
            areturn
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1     a  Ljdk/vm/ci/meta/Value;
            0    4     2     b  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     

  public jdk.vm.ci.meta.Value emitMathSqrt(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value input
         0: .line 472
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 2
            aload 1 /* input */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DOUBLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 2
         1: .line 473
            aload 1 /* input */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.SINGLE:Ljdk/vm/ci/aarch64/AArch64Kind;
            if_acmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 474
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SQRT:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            aload 1 /* input */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitUnary:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 1 // jdk.vm.ci.meta.Value input
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1  input  Ljdk/vm/ci/meta/Value;
    MethodParameters:
       Name  Flags
      input  

  public org.graalvm.compiler.lir.Variable emitBitScanForward(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
         0: .line 479
            invokestatic org.graalvm.compiler.debug.GraalError.unimplemented:()Ljava/lang/RuntimeException;
            athrow
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1  value  Ljdk/vm/ci/meta/Value;
    MethodParameters:
       Name  Flags
      value  

  public jdk.vm.ci.meta.Value emitBitCount(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value operand
         0: .line 484
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* operand */
            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 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 485
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* operand */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(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
         2: .line 486
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp
            dup
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp$BitManipulationOpCode.POPCNT:Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;
            aload 2 /* result */
            aload 0 /* this */
            aload 1 /* operand */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;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 487
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.lir.Variable result
        end local 1 // jdk.vm.ci.meta.Value operand
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1  operand  Ljdk/vm/ci/meta/Value;
            2    4     2   result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
         Name  Flags
      operand  

  public jdk.vm.ci.meta.Value emitBitScanReverse(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
         0: .line 492
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* value */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(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 493
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp
            dup
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp$BitManipulationOpCode.BSR:Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;
            aload 2 /* result */
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;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 494
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.lir.Variable result
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1   value  Ljdk/vm/ci/meta/Value;
            1    3     2  result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
       Name  Flags
      value  

  public jdk.vm.ci.meta.Value emitFusedMultiplyAdd(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;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value a
        start local 2 // jdk.vm.ci.meta.Value b
        start local 3 // jdk.vm.ci.meta.Value c
         0: .line 499
            aload 0 /* this */
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            aload 1 /* a */
            aload 2 /* b */
            aload 3 /* c */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitMultiplyAddSub:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
            areturn
        end local 3 // jdk.vm.ci.meta.Value c
        end local 2 // jdk.vm.ci.meta.Value b
        end local 1 // jdk.vm.ci.meta.Value a
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1     a  Ljdk/vm/ci/meta/Value;
            0    1     2     b  Ljdk/vm/ci/meta/Value;
            0    1     3     c  Ljdk/vm/ci/meta/Value;
    MethodParameters:
      Name  Flags
      a     
      b     
      c     

  public jdk.vm.ci.meta.Value emitCountLeadingZeros(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
         0: .line 504
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* value */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(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 505
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp
            dup
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp$BitManipulationOpCode.CLZ:Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;
            aload 2 /* result */
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;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 506
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.lir.Variable result
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1   value  Ljdk/vm/ci/meta/Value;
            1    3     2  result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
       Name  Flags
      value  

  public jdk.vm.ci.meta.Value emitCountTrailingZeros(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
         0: .line 511
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 1 /* value */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            getstatic jdk.vm.ci.aarch64.AArch64Kind.DWORD:Ljdk/vm/ci/aarch64/AArch64Kind;
            invokevirtual org.graalvm.compiler.core.common.LIRKind.changeType:(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 512
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp
            dup
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            getstatic org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp$BitManipulationOpCode.CTZ:Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;
            aload 2 /* result */
            aload 0 /* this */
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp.<init>:(Lorg/graalvm/compiler/lir/gen/LIRGeneratorTool;Lorg/graalvm/compiler/lir/aarch64/AArch64BitManipulationOp$BitManipulationOpCode;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 513
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.lir.Variable result
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1   value  Ljdk/vm/ci/meta/Value;
            1    3     2  result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
       Name  Flags
      value  

  private org.graalvm.compiler.lir.Variable emitUnary(org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, jdk.vm.ci.meta.Value);
    descriptor: (Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        start local 2 // jdk.vm.ci.meta.Value inputVal
         0: .line 517
            aload 0 /* this */
            aload 2 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 3 /* input */
        start local 3 // jdk.vm.ci.meta.AllocatableValue input
         1: .line 518
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            iconst_1
            anewarray jdk.vm.ci.meta.Value
            dup
            iconst_0
            aload 3 /* input */
            aastore
            invokestatic org.graalvm.compiler.core.common.LIRKind.combine:([Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/core/common/LIRKind;
            invokevirtual 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
         2: .line 519
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$UnaryOp
            dup
            aload 1 /* op */
            aload 4 /* result */
            aload 3 /* input */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$UnaryOp.<init>:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;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 520
            aload 4 /* result */
            areturn
        end local 4 // org.graalvm.compiler.lir.Variable result
        end local 3 // jdk.vm.ci.meta.AllocatableValue input
        end local 2 // jdk.vm.ci.meta.Value inputVal
        end local 1 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1        op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0    4     2  inputVal  Ljdk/vm/ci/meta/Value;
            1    4     3     input  Ljdk/vm/ci/meta/AllocatableValue;
            2    4     4    result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
          Name  Flags
      op        
      inputVal  

  private jdk.vm.ci.meta.AllocatableValue moveSp(jdk.vm.ci.meta.AllocatableValue);
    descriptor: (Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.AllocatableValue val
         0: .line 524
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 1 /* val */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.moveSp:(Ljdk/vm/ci/meta/AllocatableValue;)Ljdk/vm/ci/meta/AllocatableValue;
            areturn
        end local 1 // jdk.vm.ci.meta.AllocatableValue val
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    1     1   val  Ljdk/vm/ci/meta/AllocatableValue;
    MethodParameters:
      Name  Flags
      val   

  private org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp getOpCode(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp, org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp);
    descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;)Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value val
        start local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp intOp
        start local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp floatOp
         0: .line 531
            aload 0 /* this */
            aload 1 /* val */
            invokevirtual jdk.vm.ci.meta.Value.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.isNumericInteger:(Ljdk/vm/ci/meta/PlatformKind;)Z
            ifeq 1
            aload 2 /* intOp */
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 3 /* floatOp */
      StackMap locals:
      StackMap stack: org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
         2: areturn
        end local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp floatOp
        end local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp intOp
        end local 1 // jdk.vm.ci.meta.Value val
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    3     1      val  Ljdk/vm/ci/meta/Value;
            0    3     2    intOp  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            0    3     3  floatOp  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
    MethodParameters:
         Name  Flags
      val      
      intOp    
      floatOp  

  public org.graalvm.compiler.lir.Variable emitLoad(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind kind
        start local 2 // jdk.vm.ci.meta.Value address
        start local 3 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 536
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 2 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
            astore 4 /* loadAddress */
        start local 4 // org.graalvm.compiler.lir.aarch64.AArch64AddressValue loadAddress
         1: .line 537
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 1 /* kind */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.toRegisterKind:(Ljdk/vm/ci/meta/ValueKind;)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
         2: .line 538
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64Move$LoadOp
            dup
            aload 1 /* kind */
            invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 5 /* result */
            aload 4 /* loadAddress */
            aload 3 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$LoadOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Ljdk/vm/ci/meta/AllocatableValue;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
         3: .line 539
            aload 5 /* result */
            areturn
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // org.graalvm.compiler.lir.aarch64.AArch64AddressValue loadAddress
        end local 3 // org.graalvm.compiler.lir.LIRFrameState state
        end local 2 // jdk.vm.ci.meta.Value address
        end local 1 // org.graalvm.compiler.core.common.LIRKind kind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1         kind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    4     2      address  Ljdk/vm/ci/meta/Value;
            0    4     3        state  Lorg/graalvm/compiler/lir/LIRFrameState;
            1    4     4  loadAddress  Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
            2    4     5       result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
         Name  Flags
      kind     
      address  
      state    

  public org.graalvm.compiler.lir.Variable emitVolatileLoad(org.graalvm.compiler.core.common.LIRKind, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Lorg/graalvm/compiler/core/common/LIRKind;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)Lorg/graalvm/compiler/lir/Variable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // org.graalvm.compiler.core.common.LIRKind kind
        start local 2 // jdk.vm.ci.meta.Value address
        start local 3 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 544
            aload 0 /* this */
            aload 2 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 4 /* loadAddress */
        start local 4 // jdk.vm.ci.meta.AllocatableValue loadAddress
         1: .line 545
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 1 /* kind */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.toRegisterKind:(Ljdk/vm/ci/meta/ValueKind;)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
         2: .line 546
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64Move$VolatileLoadOp
            dup
            aload 1 /* kind */
            invokevirtual org.graalvm.compiler.core.common.LIRKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            aload 5 /* result */
            aload 4 /* loadAddress */
            aload 3 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$VolatileLoadOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;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
         3: .line 547
            aload 5 /* result */
            areturn
        end local 5 // org.graalvm.compiler.lir.Variable result
        end local 4 // jdk.vm.ci.meta.AllocatableValue loadAddress
        end local 3 // org.graalvm.compiler.lir.LIRFrameState state
        end local 2 // jdk.vm.ci.meta.Value address
        end local 1 // org.graalvm.compiler.core.common.LIRKind kind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    4     1         kind  Lorg/graalvm/compiler/core/common/LIRKind;
            0    4     2      address  Ljdk/vm/ci/meta/Value;
            0    4     3        state  Lorg/graalvm/compiler/lir/LIRFrameState;
            1    4     4  loadAddress  Ljdk/vm/ci/meta/AllocatableValue;
            2    4     5       result  Lorg/graalvm/compiler/lir/Variable;
    MethodParameters:
         Name  Flags
      kind     
      address  
      state    

  public void emitStore(jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.ValueKind lirKind
        start local 2 // jdk.vm.ci.meta.Value address
        start local 3 // jdk.vm.ci.meta.Value inputVal
        start local 4 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 552
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            aload 2 /* address */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64LIRGenerator.asAddressValue:(Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
            astore 5 /* storeAddress */
        start local 5 // org.graalvm.compiler.lir.aarch64.AArch64AddressValue storeAddress
         1: .line 553
            aload 1 /* lirKind */
            invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 6 /* kind */
        start local 6 // jdk.vm.ci.aarch64.AArch64Kind kind
         2: .line 555
            aload 3 /* inputVal */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.isJavaConstant:(Ljdk/vm/ci/meta/Value;)Z
            ifeq 7
            aload 6 /* kind */
            invokevirtual jdk.vm.ci.aarch64.AArch64Kind.isInteger:()Z
            ifeq 7
         3: .line 556
            aload 3 /* inputVal */
            invokestatic org.graalvm.compiler.lir.LIRValueUtil.asJavaConstant:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/JavaConstant;
            astore 7 /* c */
        start local 7 // jdk.vm.ci.meta.JavaConstant c
         4: .line 557
            aload 7 /* c */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isDefaultForKind:()Z
            ifeq 7
         5: .line 559
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64Move$StoreConstantOp
            dup
            aload 6 /* kind */
            aload 5 /* storeAddress */
            aload 7 /* c */
            aload 4 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$StoreConstantOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Ljdk/vm/ci/meta/JavaConstant;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
         6: .line 560
            return
        end local 7 // jdk.vm.ci.meta.JavaConstant c
         7: .line 563
      StackMap locals: org.graalvm.compiler.lir.aarch64.AArch64AddressValue jdk.vm.ci.aarch64.AArch64Kind
      StackMap stack:
            aload 0 /* this */
            aload 3 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 7 /* input */
        start local 7 // jdk.vm.ci.meta.AllocatableValue input
         8: .line 564
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp
            dup
            aload 6 /* kind */
            aload 5 /* storeAddress */
            aload 7 /* input */
            aload 4 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;Ljdk/vm/ci/meta/AllocatableValue;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
         9: .line 565
            return
        end local 7 // jdk.vm.ci.meta.AllocatableValue input
        end local 6 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 5 // org.graalvm.compiler.lir.aarch64.AArch64AddressValue storeAddress
        end local 4 // org.graalvm.compiler.lir.LIRFrameState state
        end local 3 // jdk.vm.ci.meta.Value inputVal
        end local 2 // jdk.vm.ci.meta.Value address
        end local 1 // jdk.vm.ci.meta.ValueKind lirKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0   10     1       lirKind  Ljdk/vm/ci/meta/ValueKind<*>;
            0   10     2       address  Ljdk/vm/ci/meta/Value;
            0   10     3      inputVal  Ljdk/vm/ci/meta/Value;
            0   10     4         state  Lorg/graalvm/compiler/lir/LIRFrameState;
            1   10     5  storeAddress  Lorg/graalvm/compiler/lir/aarch64/AArch64AddressValue;
            2   10     6          kind  Ljdk/vm/ci/aarch64/AArch64Kind;
            4    7     7             c  Ljdk/vm/ci/meta/JavaConstant;
            8   10     7         input  Ljdk/vm/ci/meta/AllocatableValue;
    Signature: (Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
    MethodParameters:
          Name  Flags
      lirKind   
      address   
      inputVal  
      state     

  public void emitVolatileStore(jdk.vm.ci.meta.ValueKind<?>, jdk.vm.ci.meta.Value, jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.LIRFrameState);
    descriptor: (Ljdk/vm/ci/meta/ValueKind;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=8, args_size=5
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.ValueKind lirKind
        start local 2 // jdk.vm.ci.meta.Value addressVal
        start local 3 // jdk.vm.ci.meta.Value inputVal
        start local 4 // org.graalvm.compiler.lir.LIRFrameState state
         0: .line 569
            aload 1 /* lirKind */
            invokevirtual jdk.vm.ci.meta.ValueKind.getPlatformKind:()Ljdk/vm/ci/meta/PlatformKind;
            checkcast jdk.vm.ci.aarch64.AArch64Kind
            astore 5 /* kind */
        start local 5 // jdk.vm.ci.aarch64.AArch64Kind kind
         1: .line 570
            aload 0 /* this */
            aload 3 /* inputVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 6 /* input */
        start local 6 // jdk.vm.ci.meta.AllocatableValue input
         2: .line 571
            aload 0 /* this */
            aload 2 /* addressVal */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.asAllocatable:(Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/AllocatableValue;
            astore 7 /* address */
        start local 7 // jdk.vm.ci.meta.AllocatableValue address
         3: .line 572
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            new org.graalvm.compiler.lir.aarch64.AArch64Move$VolatileStoreOp
            dup
            aload 5 /* kind */
            aload 7 /* address */
            aload 6 /* input */
            aload 4 /* state */
            invokespecial org.graalvm.compiler.lir.aarch64.AArch64Move$VolatileStoreOp.<init>:(Ljdk/vm/ci/aarch64/AArch64Kind;Ljdk/vm/ci/meta/AllocatableValue;Ljdk/vm/ci/meta/AllocatableValue;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
         4: .line 573
            return
        end local 7 // jdk.vm.ci.meta.AllocatableValue address
        end local 6 // jdk.vm.ci.meta.AllocatableValue input
        end local 5 // jdk.vm.ci.aarch64.AArch64Kind kind
        end local 4 // org.graalvm.compiler.lir.LIRFrameState state
        end local 3 // jdk.vm.ci.meta.Value inputVal
        end local 2 // jdk.vm.ci.meta.Value addressVal
        end local 1 // jdk.vm.ci.meta.ValueKind lirKind
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    5     1     lirKind  Ljdk/vm/ci/meta/ValueKind<*>;
            0    5     2  addressVal  Ljdk/vm/ci/meta/Value;
            0    5     3    inputVal  Ljdk/vm/ci/meta/Value;
            0    5     4       state  Lorg/graalvm/compiler/lir/LIRFrameState;
            1    5     5        kind  Ljdk/vm/ci/aarch64/AArch64Kind;
            2    5     6       input  Ljdk/vm/ci/meta/AllocatableValue;
            3    5     7     address  Ljdk/vm/ci/meta/AllocatableValue;
    Signature: (Ljdk/vm/ci/meta/ValueKind<*>;Ljdk/vm/ci/meta/Value;Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/LIRFrameState;)V
    MethodParameters:
            Name  Flags
      lirKind     
      addressVal  
      inputVal    
      state       

  public jdk.vm.ci.meta.Value emitRound(jdk.vm.ci.meta.Value, org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode);
    descriptor: (Ljdk/vm/ci/meta/Value;Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;)Ljdk/vm/ci/meta/Value;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
        start local 1 // jdk.vm.ci.meta.Value value
        start local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode mode
         0: .line 578
            invokestatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticLIRGeneratorTool$RoundingMode:()[I
            aload 2 /* mode */
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 1
                    2: 5
                    3: 3
              default: 7
          }
         1: .line 580
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FRINTN:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            astore 3 /* op */
        start local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         2: .line 581
            goto 8
        end local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         3: .line 583
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FRINTP:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            astore 3 /* op */
        start local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         4: .line 584
            goto 8
        end local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         5: .line 586
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FRINTM:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            astore 3 /* op */
        start local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         6: .line 587
            goto 8
        end local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         7: .line 589
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        start local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
         8: .line 592
      StackMap locals: org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
      StackMap stack:
            aload 0 /* this */
            aload 3 /* op */
            aload 1 /* value */
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitUnary:(Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;Ljdk/vm/ci/meta/Value;)Lorg/graalvm/compiler/lir/Variable;
            areturn
        end local 3 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp op
        end local 2 // org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode mode
        end local 1 // jdk.vm.ci.meta.Value value
        end local 0 // org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/graalvm/compiler/core/aarch64/AArch64ArithmeticLIRGenerator;
            0    9     1  value  Ljdk/vm/ci/meta/Value;
            0    9     2   mode  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;
            2    3     3     op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            4    5     3     op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            6    7     3     op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            8    9     3     op  Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
    MethodParameters:
       Name  Flags
      value  
      mode   

  public org.graalvm.compiler.lir.gen.LIRGenerator getLIRGen();
    descriptor: ()Lorg/graalvm/compiler/lir/gen/LIRGenerator;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.getLIRGen:()Lorg/graalvm/compiler/core/aarch64/AArch64LIRGenerator;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public jdk.vm.ci.meta.Value emitBitScanForward(jdk.vm.ci.meta.Value);
    descriptor: (Ljdk/vm/ci/meta/Value;)Ljdk/vm/ci/meta/Value;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.emitBitScanForward:(Ljdk/vm/ci/meta/Value;)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 68
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$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.AArch64ArithmeticLIRGenerator.$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$FloatConvert();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 68
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.compiler.core.common.calc.FloatConvert.values:()[Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.compiler.core.common.calc.FloatConvert.D2F:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.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.FloatConvert.D2I:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.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 org.graalvm.compiler.core.common.calc.FloatConvert.D2L:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.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 org.graalvm.compiler.core.common.calc.FloatConvert.F2D:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.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.FloatConvert.F2I:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.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.FloatConvert.F2L:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
            iconst_3
            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.FloatConvert.I2D:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
            bipush 8
            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.FloatConvert.I2F:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
            iconst_5
            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.FloatConvert.L2D:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.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 org.graalvm.compiler.core.common.calc.FloatConvert.L2F:Lorg/graalvm/compiler/core/common/calc/FloatConvert;
            invokevirtual org.graalvm.compiler.core.common.calc.FloatConvert.ordinal:()I
            bipush 6
            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.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$core$common$calc$FloatConvert:[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$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 68
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.values:()[Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ABS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 35
            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.lir.aarch64.AArch64ArithmeticOp.ADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            iconst_3
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ADDS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.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 org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.AND:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 23
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ANDS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 24
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ASHR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 32
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.BIC:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 27
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.DIV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 10
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.EON:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 29
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FABS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 41
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 36
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FDIV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 39
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 17
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMAX:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 45
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMIN:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 46
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FMUL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 38
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FNEG:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 40
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FRINTM:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 42
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FRINTN:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 43
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FRINTP:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 44
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.FSUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 37
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.LSHR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 31
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MADD:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 15
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MNEG:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 9
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MSUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 16
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MUL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 7
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.MULVS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 8
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.NEG:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            iconst_1
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.NOT:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            iconst_2
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.OR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 25
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ORN:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 28
            iastore
        93: goto 95
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        94: pop
      StackMap locals:
      StackMap stack:
        95: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.REM:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 20
            iastore
        96: goto 98
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        97: pop
      StackMap locals:
      StackMap stack:
        98: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ROR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 33
            iastore
        99: goto 101
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       100: pop
      StackMap locals:
      StackMap stack:
       101: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.RORV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 34
            iastore
       102: goto 104
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       103: pop
      StackMap locals:
      StackMap stack:
       104: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SHL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 30
            iastore
       105: goto 107
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       106: pop
      StackMap locals:
      StackMap stack:
       107: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMADDL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 18
            iastore
       108: goto 110
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       109: pop
      StackMap locals:
      StackMap stack:
       110: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMNEGL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 14
            iastore
       111: goto 113
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       112: pop
      StackMap locals:
      StackMap stack:
       113: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMSUBL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 19
            iastore
       114: goto 116
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       115: pop
      StackMap locals:
      StackMap stack:
       116: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMULH:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 11
            iastore
       117: goto 119
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       118: pop
      StackMap locals:
      StackMap stack:
       119: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SMULL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 13
            iastore
       120: goto 122
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       121: pop
      StackMap locals:
      StackMap stack:
       122: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SQRT:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 47
            iastore
       123: goto 125
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       124: pop
      StackMap locals:
      StackMap stack:
       125: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SUB:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            iconst_5
            iastore
       126: goto 128
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       127: pop
      StackMap locals:
      StackMap stack:
       128: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.SUBS:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 6
            iastore
       129: goto 131
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       130: pop
      StackMap locals:
      StackMap stack:
       131: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.UDIV:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 21
            iastore
       132: goto 134
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       133: pop
      StackMap locals:
      StackMap stack:
       134: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.UMULH:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 12
            iastore
       135: goto 137
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       136: pop
      StackMap locals:
      StackMap stack:
       137: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.UREM:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 22
            iastore
       138: goto 140
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       139: pop
      StackMap locals:
      StackMap stack:
       140: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.XOR:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp.ordinal:()I
            bipush 26
            iastore
       141: goto 143
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       142: pop
      StackMap locals:
      StackMap stack:
       143: aload 0
            dup
            putstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp:[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
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
          92    93      94  Class java.lang.NoSuchFieldError
          95    96      97  Class java.lang.NoSuchFieldError
          98    99     100  Class java.lang.NoSuchFieldError
         101   102     103  Class java.lang.NoSuchFieldError
         104   105     106  Class java.lang.NoSuchFieldError
         107   108     109  Class java.lang.NoSuchFieldError
         110   111     112  Class java.lang.NoSuchFieldError
         113   114     115  Class java.lang.NoSuchFieldError
         116   117     118  Class java.lang.NoSuchFieldError
         119   120     121  Class java.lang.NoSuchFieldError
         122   123     124  Class java.lang.NoSuchFieldError
         125   126     127  Class java.lang.NoSuchFieldError
         128   129     130  Class java.lang.NoSuchFieldError
         131   132     133  Class java.lang.NoSuchFieldError
         134   135     136  Class java.lang.NoSuchFieldError
         137   138     139  Class java.lang.NoSuchFieldError
         140   141     142  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp$ARMv8ConstantCategory();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 68
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp$ARMv8ConstantCategory:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.values:()[Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp$ARMv8ConstantCategory;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.ARITHMETIC:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp$ARMv8ConstantCategory;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.LOGICAL:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp$ARMv8ConstantCategory;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.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 org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.NONE:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp$ARMv8ConstantCategory;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.ordinal:()I
            iconst_1
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.SHIFT:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticOp$ARMv8ConstantCategory;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory.ordinal:()I
            iconst_4
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticOp$ARMv8ConstantCategory:[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

  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 68
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$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.AArch64ArithmeticLIRGenerator.$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

  static int[] $SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticLIRGeneratorTool$RoundingMode();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 68
            getstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticLIRGeneratorTool$RoundingMode:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.values:()[Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.DOWN:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.ordinal:()I
            iconst_2
            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.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.NEAREST:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.TRUNCATE:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.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 org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.UP:Lorg/graalvm/compiler/lir/aarch64/AArch64ArithmeticLIRGeneratorTool$RoundingMode;
            invokevirtual org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            dup
            putstatic org.graalvm.compiler.core.aarch64.AArch64ArithmeticLIRGenerator.$SWITCH_TABLE$org$graalvm$compiler$lir$aarch64$AArch64ArithmeticLIRGeneratorTool$RoundingMode:[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
}
SourceFile: "AArch64ArithmeticLIRGenerator.java"
InnerClasses:
  public final RoundingMode = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool$RoundingMode of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticLIRGeneratorTool
  public final ARMv8ConstantCategory = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$ARMv8ConstantCategory of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
  public BinaryCompositeOp = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryCompositeOp of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
  public BinaryConstOp = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryConstOp of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
  public BinaryOp = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$BinaryOp of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
  public MultiplyAddSubOp = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$MultiplyAddSubOp of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
  public UnaryOp = org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp$UnaryOp of org.graalvm.compiler.lir.aarch64.AArch64ArithmeticOp
  public final BitManipulationOpCode = org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp$BitManipulationOpCode of org.graalvm.compiler.lir.aarch64.AArch64BitManipulationOp
  public final LoadOp = org.graalvm.compiler.lir.aarch64.AArch64Move$LoadOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public final StoreConstantOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StoreConstantOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public StoreOp = org.graalvm.compiler.lir.aarch64.AArch64Move$StoreOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public final VolatileLoadOp = org.graalvm.compiler.lir.aarch64.AArch64Move$VolatileLoadOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public VolatileStoreOp = org.graalvm.compiler.lir.aarch64.AArch64Move$VolatileStoreOp of org.graalvm.compiler.lir.aarch64.AArch64Move
  public MemoryOp = org.graalvm.compiler.lir.aarch64.AArch64Unary$MemoryOp of org.graalvm.compiler.lir.aarch64.AArch64Unary