public class jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory implements jdk.vm.ci.hotspot.HotSpotJVMCIBackendFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory
  super_class: java.lang.Object
{
  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 44
            ldc Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;
            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 jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;

  private static java.util.EnumSet<jdk.vm.ci.aarch64.AArch64$CPUFeature> computeFeatures(jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig);
    descriptor: (Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljava/util/EnumSet;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
         0: .line 48
            ldc Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
            astore 1 /* features */
        start local 1 // java.util.EnumSet features
         1: .line 50
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64FP:J
            land
            lconst_0
            lcmp
            ifeq 3
         2: .line 51
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.FP:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 53
      StackMap locals: java.util.EnumSet
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64ASIMD:J
            land
            lconst_0
            lcmp
            ifeq 5
         4: .line 54
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.ASIMD:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         5: .line 56
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64EVTSTRM:J
            land
            lconst_0
            lcmp
            ifeq 7
         6: .line 57
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.EVTSTRM:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         7: .line 59
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64AES:J
            land
            lconst_0
            lcmp
            ifeq 9
         8: .line 60
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.AES:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         9: .line 62
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64PMULL:J
            land
            lconst_0
            lcmp
            ifeq 11
        10: .line 63
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.PMULL:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        11: .line 65
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64SHA1:J
            land
            lconst_0
            lcmp
            ifeq 13
        12: .line 66
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.SHA1:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        13: .line 68
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64SHA2:J
            land
            lconst_0
            lcmp
            ifeq 15
        14: .line 69
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.SHA2:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        15: .line 71
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64CRC32:J
            land
            lconst_0
            lcmp
            ifeq 17
        16: .line 72
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.CRC32:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        17: .line 74
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64LSE:J
            land
            lconst_0
            lcmp
            ifeq 19
        18: .line 75
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.LSE:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        19: .line 77
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64STXR_PREFETCH:J
            land
            lconst_0
            lcmp
            ifeq 21
        20: .line 78
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.STXR_PREFETCH:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        21: .line 80
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64A53MAC:J
            land
            lconst_0
            lcmp
            ifeq 23
        22: .line 81
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.A53MAC:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        23: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.vmVersionFeatures:J
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.aarch64DMB_ATOMICS:J
            land
            lconst_0
            lcmp
            ifeq 25
        24: .line 84
            aload 1 /* features */
            getstatic jdk.vm.ci.aarch64.AArch64$CPUFeature.DMB_ATOMICS:Ljdk/vm/ci/aarch64/AArch64$CPUFeature;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        25: .line 87
      StackMap locals:
      StackMap stack:
            aload 1 /* features */
            areturn
        end local 1 // java.util.EnumSet features
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   26     0    config  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;
            1   26     1  features  Ljava/util/EnumSet<Ljdk/vm/ci/aarch64/AArch64$CPUFeature;>;
    Signature: (Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljava/util/EnumSet<Ljdk/vm/ci/aarch64/AArch64$CPUFeature;>;
    MethodParameters:
        Name  Flags
      config  

  private static java.util.EnumSet<jdk.vm.ci.aarch64.AArch64$Flag> computeFlags(jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig);
    descriptor: (Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljava/util/EnumSet;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
         0: .line 91
            ldc Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokestatic java.util.EnumSet.noneOf:(Ljava/lang/Class;)Ljava/util/EnumSet;
            astore 1 /* flags */
        start local 1 // java.util.EnumSet flags
         1: .line 93
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.useBarriersForVolatile:Z
            ifeq 3
         2: .line 94
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.UseBarriersForVolatile:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         3: .line 96
      StackMap locals: java.util.EnumSet
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.useCRC32:Z
            ifeq 5
         4: .line 97
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.UseCRC32:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         5: .line 99
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.useNeon:Z
            ifeq 7
         6: .line 100
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.UseNeon:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         7: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.useSIMDForMemoryOps:Z
            ifeq 9
         8: .line 103
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.UseSIMDForMemoryOps:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
         9: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.avoidUnalignedAccesses:Z
            ifeq 11
        10: .line 106
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.AvoidUnalignedAccesses:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        11: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.useLSE:Z
            ifeq 13
        12: .line 109
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.UseLSE:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        13: .line 111
      StackMap locals:
      StackMap stack:
            aload 0 /* config */
            getfield jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.useBlockZeroing:Z
            ifeq 15
        14: .line 112
            aload 1 /* flags */
            getstatic jdk.vm.ci.aarch64.AArch64$Flag.UseBlockZeroing:Ljdk/vm/ci/aarch64/AArch64$Flag;
            invokevirtual java.util.EnumSet.add:(Ljava/lang/Object;)Z
            pop
        15: .line 115
      StackMap locals:
      StackMap stack:
            aload 1 /* flags */
            areturn
        end local 1 // java.util.EnumSet flags
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0  config  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;
            1   16     1   flags  Ljava/util/EnumSet<Ljdk/vm/ci/aarch64/AArch64$Flag;>;
    Signature: (Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljava/util/EnumSet<Ljdk/vm/ci/aarch64/AArch64$Flag;>;
    MethodParameters:
        Name  Flags
      config  

  private static jdk.vm.ci.code.TargetDescription createTarget(jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig);
    descriptor: (Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljdk/vm/ci/code/TargetDescription;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
         0: .line 122
            new jdk.vm.ci.aarch64.AArch64
            dup
            aload 0 /* config */
            invokestatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.computeFeatures:(Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljava/util/EnumSet;
            aload 0 /* config */
            invokestatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.computeFlags:(Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljava/util/EnumSet;
            invokespecial jdk.vm.ci.aarch64.AArch64.<init>:(Ljava/util/EnumSet;Ljava/util/EnumSet;)V
            astore 1 /* arch */
        start local 1 // jdk.vm.ci.code.Architecture arch
         1: .line 123
            new jdk.vm.ci.code.TargetDescription
            dup
            aload 1 /* arch */
            iconst_1
            bipush 16
            sipush 4096
            iconst_1
            invokespecial jdk.vm.ci.code.TargetDescription.<init>:(Ljdk/vm/ci/code/Architecture;ZIIZ)V
            areturn
        end local 1 // jdk.vm.ci.code.Architecture arch
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  config  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;
            1    2     1    arch  Ljdk/vm/ci/code/Architecture;
    MethodParameters:
        Name  Flags
      config  

  protected jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider createConstantReflection(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
        start local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
         0: .line 127
            new jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider
            dup
            aload 1 /* runtime */
            invokespecial jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)V
            areturn
        end local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;
            0    1     1  runtime  Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
    MethodParameters:
         Name  Flags
      runtime  

  private static jdk.vm.ci.code.RegisterConfig createRegisterConfig(jdk.vm.ci.code.TargetDescription);
    descriptor: (Ljdk/vm/ci/code/TargetDescription;)Ljdk/vm/ci/code/RegisterConfig;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.vm.ci.code.TargetDescription target
         0: .line 131
            new jdk.vm.ci.hotspot.aarch64.AArch64HotSpotRegisterConfig
            dup
            aload 0 /* target */
            invokespecial jdk.vm.ci.hotspot.aarch64.AArch64HotSpotRegisterConfig.<init>:(Ljdk/vm/ci/code/TargetDescription;)V
            areturn
        end local 0 // jdk.vm.ci.code.TargetDescription target
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  target  Ljdk/vm/ci/code/TargetDescription;
    MethodParameters:
        Name  Flags
      target  

  protected jdk.vm.ci.hotspot.HotSpotCodeCacheProvider createCodeCache(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime, jdk.vm.ci.code.TargetDescription, jdk.vm.ci.code.RegisterConfig);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljdk/vm/ci/code/TargetDescription;Ljdk/vm/ci/code/RegisterConfig;)Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
        start local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        start local 2 // jdk.vm.ci.code.TargetDescription target
        start local 3 // jdk.vm.ci.code.RegisterConfig regConfig
         0: .line 135
            new jdk.vm.ci.hotspot.HotSpotCodeCacheProvider
            dup
            aload 1 /* runtime */
            aload 2 /* target */
            aload 3 /* regConfig */
            invokespecial jdk.vm.ci.hotspot.HotSpotCodeCacheProvider.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljdk/vm/ci/code/TargetDescription;Ljdk/vm/ci/code/RegisterConfig;)V
            areturn
        end local 3 // jdk.vm.ci.code.RegisterConfig regConfig
        end local 2 // jdk.vm.ci.code.TargetDescription target
        end local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;
            0    1     1    runtime  Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
            0    1     2     target  Ljdk/vm/ci/code/TargetDescription;
            0    1     3  regConfig  Ljdk/vm/ci/code/RegisterConfig;
    MethodParameters:
           Name  Flags
      runtime    
      target     
      regConfig  

  protected jdk.vm.ci.hotspot.HotSpotMetaAccessProvider createMetaAccess(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
        start local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
         0: .line 139
            new jdk.vm.ci.hotspot.HotSpotMetaAccessProvider
            dup
            aload 1 /* runtime */
            invokespecial jdk.vm.ci.hotspot.HotSpotMetaAccessProvider.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)V
            areturn
        end local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;
            0    1     1  runtime  Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
    MethodParameters:
         Name  Flags
      runtime  

  public java.lang.String getArchitecture();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
         0: .line 144
            ldc "aarch64"
            areturn
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
         0: .line 149
            new java.lang.StringBuilder
            dup
            ldc "JVMCIBackend:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.getArchitecture:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;

  public jdk.vm.ci.runtime.JVMCIBackend createJVMCIBackend(jdk.vm.ci.hotspot.HotSpotJVMCIRuntime, jdk.vm.ci.runtime.JVMCIBackend);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljdk/vm/ci/runtime/JVMCIBackend;)Ljdk/vm/ci/runtime/JVMCIBackend;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=16, args_size=3
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
        start local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        start local 2 // jdk.vm.ci.runtime.JVMCIBackend host
         0: .line 156
            getstatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.$assertionsDisabled:Z
            ifne 1
            aload 2 /* host */
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 157
      StackMap locals:
      StackMap stack:
            new jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig
            dup
            aload 1 /* runtime */
            invokevirtual jdk.vm.ci.hotspot.HotSpotJVMCIRuntime.getConfigStore:()Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;
            invokespecial jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig.<init>:(Ljdk/vm/ci/hotspot/HotSpotVMConfigStore;)V
            astore 3 /* config */
        start local 3 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
         2: .line 158
            aload 3 /* config */
            invokestatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.createTarget:(Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;)Ljdk/vm/ci/code/TargetDescription;
            astore 4 /* target */
        start local 4 // jdk.vm.ci.code.TargetDescription target
         3: .line 165
            aconst_null
            astore 10
            aconst_null
            astore 11
         4: ldc "create providers"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 12 /* t */
        start local 12 // jdk.vm.ci.common.InitTimer t
         5: .line 166
            aconst_null
            astore 13
            aconst_null
            astore 14
         6: ldc "create MetaAccess provider"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 15 /* rt */
        start local 15 // jdk.vm.ci.common.InitTimer rt
         7: .line 167
            aload 0 /* this */
            aload 1 /* runtime */
            invokevirtual jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.createMetaAccess:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;
            astore 8 /* metaAccess */
        start local 8 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
         8: .line 168
            aload 15 /* rt */
            ifnull 14
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
            goto 14
        end local 8 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription top top top top top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: java.lang.Throwable
         9: astore 13
            aload 15 /* rt */
            ifnull 10
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 15 // jdk.vm.ci.common.InitTimer rt
      StackMap locals:
      StackMap stack:
        10: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 14
            aload 13
            ifnonnull 12
            aload 14
            astore 13
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 13
            aload 14
            if_acmpeq 13
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 13
            athrow
        start local 8 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
        14: .line 169
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription top top top jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack:
            aconst_null
            astore 13
            aconst_null
            astore 14
        15: ldc "create RegisterConfig"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 15 /* rt */
        start local 15 // jdk.vm.ci.common.InitTimer rt
        16: .line 170
            aload 4 /* target */
            invokestatic jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.createRegisterConfig:(Ljdk/vm/ci/code/TargetDescription;)Ljdk/vm/ci/code/RegisterConfig;
            astore 5 /* regConfig */
        start local 5 // jdk.vm.ci.code.RegisterConfig regConfig
        17: .line 171
            aload 15 /* rt */
            ifnull 23
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
            goto 23
        end local 5 // jdk.vm.ci.code.RegisterConfig regConfig
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription top top top jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: java.lang.Throwable
        18: astore 13
            aload 15 /* rt */
            ifnull 19
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 15 // jdk.vm.ci.common.InitTimer rt
      StackMap locals:
      StackMap stack:
        19: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 14
            aload 13
            ifnonnull 21
            aload 14
            astore 13
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 13
            aload 14
            if_acmpeq 22
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 13
            athrow
        start local 5 // jdk.vm.ci.code.RegisterConfig regConfig
        23: .line 172
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig top top jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack:
            aconst_null
            astore 13
            aconst_null
            astore 14
        24: ldc "create CodeCache provider"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 15 /* rt */
        start local 15 // jdk.vm.ci.common.InitTimer rt
        25: .line 173
            aload 0 /* this */
            aload 1 /* runtime */
            aload 4 /* target */
            aload 5 /* regConfig */
            invokevirtual jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.createCodeCache:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;Ljdk/vm/ci/code/TargetDescription;Ljdk/vm/ci/code/RegisterConfig;)Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
            astore 6 /* codeCache */
        start local 6 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        26: .line 174
            aload 15 /* rt */
            ifnull 32
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
            goto 32
        end local 6 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig top top jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: java.lang.Throwable
        27: astore 13
            aload 15 /* rt */
            ifnull 28
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 15 // jdk.vm.ci.common.InitTimer rt
      StackMap locals:
      StackMap stack:
        28: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        29: astore 14
            aload 13
            ifnonnull 30
            aload 14
            astore 13
            goto 31
      StackMap locals:
      StackMap stack:
        30: aload 13
            aload 14
            if_acmpeq 31
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        31: aload 13
            athrow
        start local 6 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        32: .line 175
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider top jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack:
            aconst_null
            astore 13
            aconst_null
            astore 14
        33: ldc "create ConstantReflection provider"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 15 /* rt */
        start local 15 // jdk.vm.ci.common.InitTimer rt
        34: .line 176
            aload 0 /* this */
            aload 1 /* runtime */
            invokevirtual jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.createConstantReflection:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
            astore 7 /* constantReflection */
        start local 7 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        35: .line 177
            aload 15 /* rt */
            ifnull 41
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
            goto 41
        end local 7 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider top jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: java.lang.Throwable
        36: astore 13
            aload 15 /* rt */
            ifnull 37
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 15 // jdk.vm.ci.common.InitTimer rt
      StackMap locals:
      StackMap stack:
        37: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        38: astore 14
            aload 13
            ifnonnull 39
            aload 14
            astore 13
            goto 40
      StackMap locals:
      StackMap stack:
        39: aload 13
            aload 14
            if_acmpeq 40
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        40: aload 13
            athrow
        start local 7 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        41: .line 178
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack:
            aconst_null
            astore 13
            aconst_null
            astore 14
        42: ldc "create StackIntrospection provider"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 15 /* rt */
        start local 15 // jdk.vm.ci.common.InitTimer rt
        43: .line 179
            new jdk.vm.ci.hotspot.HotSpotStackIntrospection
            dup
            aload 1 /* runtime */
            invokespecial jdk.vm.ci.hotspot.HotSpotStackIntrospection.<init>:(Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;)V
            astore 9 /* stackIntrospection */
        start local 9 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
        44: .line 180
            aload 15 /* rt */
            ifnull 50
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
            goto 50
        end local 9 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.hotspot.HotSpotMetaAccessProvider top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: java.lang.Throwable
        45: astore 13
            aload 15 /* rt */
            ifnull 46
            aload 15 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 15 // jdk.vm.ci.common.InitTimer rt
      StackMap locals:
      StackMap stack:
        46: aload 13
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        47: astore 14
            aload 13
            ifnonnull 48
            aload 14
            astore 13
            goto 49
      StackMap locals:
      StackMap stack:
        48: aload 13
            aload 14
            if_acmpeq 49
            aload 13
            aload 14
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        49: aload 13
            athrow
        start local 9 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
        50: .line 181
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.hotspot.HotSpotMetaAccessProvider jdk.vm.ci.code.stack.StackIntrospection java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack:
            aload 12 /* t */
            ifnull 56
            aload 12 /* t */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
            goto 56
        end local 9 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
        end local 8 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
        end local 7 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        end local 6 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        end local 5 // jdk.vm.ci.code.RegisterConfig regConfig
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription top top top top top java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: java.lang.Throwable
        51: astore 10
            aload 12 /* t */
            ifnull 52
            aload 12 /* t */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 12 // jdk.vm.ci.common.InitTimer t
      StackMap locals:
      StackMap stack:
        52: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        53: astore 11
            aload 10
            ifnonnull 54
            aload 11
            astore 10
            goto 55
      StackMap locals:
      StackMap stack:
        54: aload 10
            aload 11
            if_acmpeq 55
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        55: aload 10
            athrow
        start local 5 // jdk.vm.ci.code.RegisterConfig regConfig
        start local 6 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        start local 7 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        start local 8 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
        start local 9 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
        56: .line 182
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.hotspot.HotSpotMetaAccessProvider jdk.vm.ci.code.stack.StackIntrospection
      StackMap stack:
            aconst_null
            astore 10
            aconst_null
            astore 11
        57: ldc "instantiate backend"
            invokestatic jdk.vm.ci.common.InitTimer.timer:(Ljava/lang/String;)Ljdk/vm/ci/common/InitTimer;
            astore 12 /* rt */
        start local 12 // jdk.vm.ci.common.InitTimer rt
        58: .line 183
            aload 0 /* this */
            aload 8 /* metaAccess */
            aload 6 /* codeCache */
            aload 7 /* constantReflection */
            aload 9 /* stackIntrospection */
            invokevirtual jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory.createBackend:(Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/code/stack/StackIntrospection;)Ljdk/vm/ci/runtime/JVMCIBackend;
        59: .line 184
            aload 12 /* rt */
            ifnull 60
            aload 12 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        60: .line 183
      StackMap locals: jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory jdk.vm.ci.hotspot.HotSpotJVMCIRuntime jdk.vm.ci.runtime.JVMCIBackend jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig jdk.vm.ci.code.TargetDescription jdk.vm.ci.code.RegisterConfig jdk.vm.ci.hotspot.HotSpotCodeCacheProvider jdk.vm.ci.meta.ConstantReflectionProvider jdk.vm.ci.hotspot.HotSpotMetaAccessProvider jdk.vm.ci.code.stack.StackIntrospection java.lang.Throwable java.lang.Throwable jdk.vm.ci.common.InitTimer
      StackMap stack: jdk.vm.ci.runtime.JVMCIBackend
            areturn
      StackMap locals:
      StackMap stack: java.lang.Throwable
        61: astore 10
        62: .line 184
            aload 12 /* rt */
            ifnull 63
            aload 12 /* rt */
            invokevirtual jdk.vm.ci.common.InitTimer.close:()V
        end local 12 // jdk.vm.ci.common.InitTimer rt
      StackMap locals:
      StackMap stack:
        63: aload 10
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        64: astore 11
            aload 10
            ifnonnull 65
            aload 11
            astore 10
            goto 66
      StackMap locals:
      StackMap stack:
        65: aload 10
            aload 11
            if_acmpeq 66
            aload 10
            aload 11
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        66: aload 10
            athrow
        end local 9 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
        end local 8 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
        end local 7 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        end local 6 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        end local 5 // jdk.vm.ci.code.RegisterConfig regConfig
        end local 4 // jdk.vm.ci.code.TargetDescription target
        end local 3 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotVMConfig config
        end local 2 // jdk.vm.ci.runtime.JVMCIBackend host
        end local 1 // jdk.vm.ci.hotspot.HotSpotJVMCIRuntime runtime
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   67     0                this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;
            0   67     1             runtime  Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;
            0   67     2                host  Ljdk/vm/ci/runtime/JVMCIBackend;
            2   67     3              config  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotVMConfig;
            3   67     4              target  Ljdk/vm/ci/code/TargetDescription;
           17   18     5           regConfig  Ljdk/vm/ci/code/RegisterConfig;
           23   51     5           regConfig  Ljdk/vm/ci/code/RegisterConfig;
           56   67     5           regConfig  Ljdk/vm/ci/code/RegisterConfig;
           26   27     6           codeCache  Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
           32   51     6           codeCache  Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
           56   67     6           codeCache  Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
           35   36     7  constantReflection  Ljdk/vm/ci/meta/ConstantReflectionProvider;
           41   51     7  constantReflection  Ljdk/vm/ci/meta/ConstantReflectionProvider;
           56   67     7  constantReflection  Ljdk/vm/ci/meta/ConstantReflectionProvider;
            8    9     8          metaAccess  Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;
           14   51     8          metaAccess  Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;
           56   67     8          metaAccess  Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;
           44   45     9  stackIntrospection  Ljdk/vm/ci/code/stack/StackIntrospection;
           50   51     9  stackIntrospection  Ljdk/vm/ci/code/stack/StackIntrospection;
           56   67     9  stackIntrospection  Ljdk/vm/ci/code/stack/StackIntrospection;
            5   52    12                   t  Ljdk/vm/ci/common/InitTimer;
            7   10    15                  rt  Ljdk/vm/ci/common/InitTimer;
           16   19    15                  rt  Ljdk/vm/ci/common/InitTimer;
           25   28    15                  rt  Ljdk/vm/ci/common/InitTimer;
           34   37    15                  rt  Ljdk/vm/ci/common/InitTimer;
           43   46    15                  rt  Ljdk/vm/ci/common/InitTimer;
           58   63    12                  rt  Ljdk/vm/ci/common/InitTimer;
      Exception table:
        from    to  target  type
           7     8       9  any
           6    11      11  any
          16    17      18  any
          15    20      20  any
          25    26      27  any
          24    29      29  any
          34    35      36  any
          33    38      38  any
          43    44      45  any
          42    47      47  any
           5    50      51  any
           4    53      53  any
          58    59      61  any
          57    60      64  any
          61    64      64  any
    MethodParameters:
         Name  Flags
      runtime  
      host     

  protected jdk.vm.ci.runtime.JVMCIBackend createBackend(jdk.vm.ci.hotspot.HotSpotMetaAccessProvider, jdk.vm.ci.hotspot.HotSpotCodeCacheProvider, jdk.vm.ci.meta.ConstantReflectionProvider, jdk.vm.ci.code.stack.StackIntrospection);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/code/stack/StackIntrospection;)Ljdk/vm/ci/runtime/JVMCIBackend;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
        start local 1 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
        start local 2 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        start local 3 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        start local 4 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
         0: .line 189
            new jdk.vm.ci.runtime.JVMCIBackend
            dup
            aload 1 /* metaAccess */
            aload 2 /* codeCache */
            aload 3 /* constantReflection */
            aload 4 /* stackIntrospection */
            invokespecial jdk.vm.ci.runtime.JVMCIBackend.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Ljdk/vm/ci/code/CodeCacheProvider;Ljdk/vm/ci/meta/ConstantReflectionProvider;Ljdk/vm/ci/code/stack/StackIntrospection;)V
            areturn
        end local 4 // jdk.vm.ci.code.stack.StackIntrospection stackIntrospection
        end local 3 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        end local 2 // jdk.vm.ci.hotspot.HotSpotCodeCacheProvider codeCache
        end local 1 // jdk.vm.ci.hotspot.HotSpotMetaAccessProvider metaAccess
        end local 0 // jdk.vm.ci.hotspot.aarch64.AArch64HotSpotJVMCIBackendFactory this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    1     0                this  Ljdk/vm/ci/hotspot/aarch64/AArch64HotSpotJVMCIBackendFactory;
            0    1     1          metaAccess  Ljdk/vm/ci/hotspot/HotSpotMetaAccessProvider;
            0    1     2           codeCache  Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
            0    1     3  constantReflection  Ljdk/vm/ci/meta/ConstantReflectionProvider;
            0    1     4  stackIntrospection  Ljdk/vm/ci/code/stack/StackIntrospection;
    MethodParameters:
                    Name  Flags
      metaAccess          
      codeCache           
      constantReflection  
      stackIntrospection  
}
SourceFile: "AArch64HotSpotJVMCIBackendFactory.java"
InnerClasses:
  public final CPUFeature = jdk.vm.ci.aarch64.AArch64$CPUFeature of jdk.vm.ci.aarch64.AArch64
  public final Flag = jdk.vm.ci.aarch64.AArch64$Flag of jdk.vm.ci.aarch64.AArch64