public class org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider extends org.graalvm.compiler.replacements.DefaultJavaLoweringProvider implements org.graalvm.compiler.hotspot.meta.HotSpotLoweringProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider
  super_class: org.graalvm.compiler.replacements.DefaultJavaLoweringProvider
{
  protected final org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider runtime;
    descriptor: Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider registers;
    descriptor: Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider constantReflection;
    descriptor: Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates instanceofSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates newObjectSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.MonitorSnippets$Templates monitorSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/MonitorSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates writeBarrierSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.LoadExceptionObjectSnippets$Templates exceptionObjectSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/LoadExceptionObjectSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.UnsafeLoadSnippets$Templates unsafeLoadSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/UnsafeLoadSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.AssertionSnippets$Templates assertionSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/AssertionSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates arraycopySnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.StringToBytesSnippets$Templates stringToBytesSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/StringToBytesSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.HashCodeSnippets$Templates hashCodeSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/HashCodeSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates resolveConstantSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  protected org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates profileSnippets;
    descriptor: Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets$Templates;
    flags: (0x0004) ACC_PROTECTED

  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 169
            ldc Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            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.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider, jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.core.common.spi.ForeignCallsProvider, org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider, jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider, jdk.vm.ci.code.TargetDescription);
    descriptor: (Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;Ljdk/vm/ci/code/TargetDescription;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider runtime
        start local 2 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 3 // org.graalvm.compiler.core.common.spi.ForeignCallsProvider foreignCalls
        start local 4 // org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider registers
        start local 5 // jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider constantReflection
        start local 6 // jdk.vm.ci.code.TargetDescription target
         0: .line 190
            aload 0 /* this */
            aload 2 /* metaAccess */
            aload 3 /* foreignCalls */
            aload 6 /* target */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Ljdk/vm/ci/code/TargetDescription;)V
         1: .line 191
            aload 0 /* this */
            aload 1 /* runtime */
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
         2: .line 192
            aload 0 /* this */
            aload 4 /* registers */
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
         3: .line 193
            aload 0 /* this */
            aload 5 /* constantReflection */
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.constantReflection:Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
         4: .line 194
            return
        end local 6 // jdk.vm.ci.code.TargetDescription target
        end local 5 // jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider constantReflection
        end local 4 // org.graalvm.compiler.hotspot.meta.HotSpotRegistersProvider registers
        end local 3 // org.graalvm.compiler.core.common.spi.ForeignCallsProvider foreignCalls
        end local 2 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        end local 1 // org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider runtime
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    5     0                this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    5     1             runtime  Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            0    5     2          metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    5     3        foreignCalls  Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
            0    5     4           registers  Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            0    5     5  constantReflection  Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
            0    5     6              target  Ljdk/vm/ci/code/TargetDescription;
    MethodParameters:
                    Name  Flags
      runtime             
      metaAccess          
      foreignCalls        
      registers           
      constantReflection  
      target              

  public void initialize(org.graalvm.compiler.hotspot.meta.HotSpotProviders, org.graalvm.compiler.hotspot.GraalHotSpotVMConfig);
    descriptor: (Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.hotspot.meta.HotSpotProviders providers
        start local 2 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
         0: .line 198
            aload 0 /* this */
            aload 1 /* providers */
            aload 1 /* providers */
            invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.initialize:(Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
         1: .line 200
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            aload 1 /* providers */
            invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getCodeCache:()Ljdk/vm/ci/hotspot/HotSpotCodeCacheProvider;
            invokevirtual jdk.vm.ci.hotspot.HotSpotCodeCacheProvider.getTarget:()Ljdk/vm/ci/code/TargetDescription;
            if_acmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 201
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.instanceofSnippets:Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
         3: .line 202
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            aload 2 /* config */
            invokespecial org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
         4: .line 203
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.MonitorSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            aload 2 /* config */
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useFastLocking:Z
            invokespecial org.graalvm.compiler.hotspot.replacements.MonitorSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;Z)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.monitorSnippets:Lorg/graalvm/compiler/hotspot/replacements/MonitorSnippets$Templates;
         5: .line 204
            aload 0 /* this */
         6: new org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            aload 2 /* config */
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedOops:Z
            ifeq 7
            aload 2 /* config */
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getOopEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            goto 8
      StackMap locals: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider org.graalvm.compiler.hotspot.meta.HotSpotProviders org.graalvm.compiler.hotspot.GraalHotSpotVMConfig
      StackMap stack: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider new 6 new 6 org.graalvm.compiler.hotspot.meta.HotSpotProviders jdk.vm.ci.code.TargetDescription
         7: aconst_null
      StackMap locals: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider org.graalvm.compiler.hotspot.meta.HotSpotProviders org.graalvm.compiler.hotspot.GraalHotSpotVMConfig
      StackMap stack: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider new 6 new 6 org.graalvm.compiler.hotspot.meta.HotSpotProviders jdk.vm.ci.code.TargetDescription org.graalvm.compiler.hotspot.CompressEncoding
         8: invokespecial org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;Lorg/graalvm/compiler/hotspot/CompressEncoding;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
         9: .line 205
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.LoadExceptionObjectSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.LoadExceptionObjectSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.exceptionObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/LoadExceptionObjectSnippets$Templates;
        10: .line 206
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.UnsafeLoadSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.UnsafeLoadSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.unsafeLoadSnippets:Lorg/graalvm/compiler/hotspot/replacements/UnsafeLoadSnippets$Templates;
        11: .line 207
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.AssertionSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.AssertionSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.assertionSnippets:Lorg/graalvm/compiler/hotspot/replacements/AssertionSnippets$Templates;
        12: .line 208
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.arraycopySnippets:Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets$Templates;
        13: .line 209
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.StringToBytesSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.StringToBytesSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.stringToBytesSnippets:Lorg/graalvm/compiler/hotspot/replacements/StringToBytesSnippets$Templates;
        14: .line 210
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.HashCodeSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.HashCodeSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.hashCodeSnippets:Lorg/graalvm/compiler/hotspot/replacements/HashCodeSnippets$Templates;
        15: .line 211
            getstatic org.graalvm.compiler.core.common.GraalOptions.GeneratePIC:Lorg/graalvm/compiler/options/OptionValue;
            invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 18
        16: .line 212
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.resolveConstantSnippets:Lorg/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets$Templates;
        17: .line 213
            aload 0 /* this */
            new org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            putfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.profileSnippets:Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets$Templates;
        18: .line 215
      StackMap locals:
      StackMap stack:
            aload 1 /* providers */
            invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            new org.graalvm.compiler.hotspot.replacements.arraycopy.UnsafeArrayCopySnippets$Templates
            dup
            aload 1 /* providers */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.target:Ljdk/vm/ci/code/TargetDescription;
            invokespecial org.graalvm.compiler.hotspot.replacements.arraycopy.UnsafeArrayCopySnippets$Templates.<init>:(Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;Ljdk/vm/ci/code/TargetDescription;)V
            invokeinterface org.graalvm.compiler.nodes.spi.Replacements.registerSnippetTemplateCache:(Lorg/graalvm/compiler/api/replacements/SnippetTemplateCache;)V
        19: .line 216
            return
        end local 2 // org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config
        end local 1 // org.graalvm.compiler.hotspot.meta.HotSpotProviders providers
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   20     0       this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0   20     1  providers  Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
            0   20     2     config  Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
    MethodParameters:
           Name  Flags
      providers  
      config     

  public void lower(org.graalvm.compiler.graph.Node, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.graph.Node n
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 220
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.graph.Node.graph:()Lorg/graalvm/compiler/graph/Graph;
            checkcast org.graalvm.compiler.nodes.StructuredGraph
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         1: .line 221
            aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.Invoke
            ifeq 4
         2: .line 222
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.Invoke
            aload 2 /* tool */
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerInvoke:(Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/spi/LoweringTool;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
         3: .line 223
            goto 164
      StackMap locals: org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
         4: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.extended.LoadMethodNode
            ifeq 7
         5: .line 224
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.extended.LoadMethodNode
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerLoadMethodNode:(Lorg/graalvm/compiler/nodes/extended/LoadMethodNode;)V
         6: .line 225
            goto 164
      StackMap locals:
      StackMap stack:
         7: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.extended.GetClassNode
            ifeq 10
         8: .line 226
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.extended.GetClassNode
            aload 2 /* tool */
            aload 3 /* graph */
            invokestatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerGetClassNode:(Lorg/graalvm/compiler/nodes/extended/GetClassNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
         9: .line 227
            goto 164
      StackMap locals:
      StackMap stack:
        10: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.extended.StoreHubNode
            ifeq 13
        11: .line 228
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.extended.StoreHubNode
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerStoreHubNode:(Lorg/graalvm/compiler/nodes/extended/StoreHubNode;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
        12: .line 229
            goto 164
      StackMap locals:
      StackMap stack:
        13: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.extended.OSRStartNode
            ifeq 16
        14: .line 230
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.extended.OSRStartNode
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerOSRStartNode:(Lorg/graalvm/compiler/nodes/extended/OSRStartNode;)V
        15: .line 231
            goto 164
      StackMap locals:
      StackMap stack:
        16: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.extended.BytecodeExceptionNode
            ifeq 19
        17: .line 232
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.extended.BytecodeExceptionNode
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerBytecodeExceptionNode:(Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode;)V
        18: .line 233
            goto 164
      StackMap locals:
      StackMap stack:
        19: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.InstanceOfNode
            ifeq 30
        20: .line 234
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.InstanceOfNode
            astore 4 /* instanceOfNode */
        start local 4 // org.graalvm.compiler.nodes.java.InstanceOfNode instanceOfNode
        21: .line 235
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areDeoptsFixed:()Z
            ifeq 24
        22: .line 236
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.instanceofSnippets:Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
            aload 4 /* instanceOfNode */
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/calc/FloatingNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        23: .line 237
            goto 164
        24: .line 238
      StackMap locals: org.graalvm.compiler.nodes.java.InstanceOfNode
      StackMap stack:
            aload 4 /* instanceOfNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.allowsNull:()Z
            ifeq 164
        25: .line 239
            aload 4 /* instanceOfNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* object */
        start local 5 // org.graalvm.compiler.nodes.ValueNode object
        26: .line 240
            aload 3 /* graph */
            aload 4 /* instanceOfNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.type:()Lorg/graalvm/compiler/core/common/type/TypeReference;
            aload 5 /* object */
            aload 4 /* instanceOfNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.profile:()Ljdk/vm/ci/meta/JavaTypeProfile;
            aload 4 /* instanceOfNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.getAnchor:()Lorg/graalvm/compiler/nodes/extended/AnchoringNode;
            invokestatic org.graalvm.compiler.nodes.java.InstanceOfNode.create:(Lorg/graalvm/compiler/core/common/type/TypeReference;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/meta/JavaTypeProfile;Lorg/graalvm/compiler/nodes/extended/AnchoringNode;)Lorg/graalvm/compiler/nodes/LogicNode;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUniqueWithInputs:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LogicNode
            astore 6 /* newTypeCheck */
        start local 6 // org.graalvm.compiler.nodes.LogicNode newTypeCheck
        27: .line 241
            aload 3 /* graph */
            aload 5 /* object */
            invokestatic org.graalvm.compiler.nodes.calc.IsNullNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LogicNode
            aload 6 /* newTypeCheck */
            ldc 0.25
            invokestatic org.graalvm.compiler.nodes.LogicNode.or:(Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/nodes/LogicNode;D)Lorg/graalvm/compiler/nodes/LogicNode;
            astore 7 /* newNode */
        start local 7 // org.graalvm.compiler.nodes.LogicNode newNode
        28: .line 242
            aload 4 /* instanceOfNode */
            aload 7 /* newNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // org.graalvm.compiler.nodes.LogicNode newNode
        end local 6 // org.graalvm.compiler.nodes.LogicNode newTypeCheck
        end local 5 // org.graalvm.compiler.nodes.ValueNode object
        end local 4 // org.graalvm.compiler.nodes.java.InstanceOfNode instanceOfNode
        29: .line 245
            goto 164
      StackMap locals:
      StackMap stack:
        30: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.InstanceOfDynamicNode
            ifeq 47
        31: .line 246
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.InstanceOfDynamicNode
            astore 4 /* instanceOfDynamicNode */
        start local 4 // org.graalvm.compiler.nodes.java.InstanceOfDynamicNode instanceOfDynamicNode
        32: .line 247
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areDeoptsFixed:()Z
            ifeq 35
        33: .line 248
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.instanceofSnippets:Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
            aload 4 /* instanceOfDynamicNode */
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/calc/FloatingNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        34: .line 249
            goto 164
        35: .line 250
      StackMap locals: org.graalvm.compiler.nodes.java.InstanceOfDynamicNode
      StackMap stack:
            aload 4 /* instanceOfDynamicNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.getMirrorOrHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 5 /* mirror */
        start local 5 // org.graalvm.compiler.nodes.ValueNode mirror
        36: .line 251
            aload 5 /* mirror */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.Stamp.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 39
        37: .line 252
            aload 3 /* graph */
            new org.graalvm.compiler.hotspot.replacements.ClassGetHubNode
            dup
            aload 5 /* mirror */
            invokespecial org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.hotspot.replacements.ClassGetHubNode
            astore 6 /* classGetHub */
        start local 6 // org.graalvm.compiler.hotspot.replacements.ClassGetHubNode classGetHub
        38: .line 253
            aload 4 /* instanceOfDynamicNode */
            aload 6 /* classGetHub */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.setMirror:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        end local 6 // org.graalvm.compiler.hotspot.replacements.ClassGetHubNode classGetHub
        39: .line 256
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 4 /* instanceOfDynamicNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.allowsNull:()Z
            ifeq 164
        40: .line 257
            aload 4 /* instanceOfDynamicNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.getObject:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* object */
        start local 6 // org.graalvm.compiler.nodes.ValueNode object
        41: .line 258
            aload 3 /* graph */
        42: .line 259
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
            aload 4 /* instanceOfDynamicNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.getMirrorOrHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 6 /* object */
            iconst_0
            invokestatic org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/LogicNode;
        43: .line 258
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUniqueWithInputs:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LogicNode
            astore 7 /* newTypeCheck */
        start local 7 // org.graalvm.compiler.nodes.LogicNode newTypeCheck
        44: .line 260
            aload 3 /* graph */
            aload 6 /* object */
            invokestatic org.graalvm.compiler.nodes.calc.IsNullNode.create:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/LogicNode;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LogicNode
            aload 7 /* newTypeCheck */
            ldc 0.25
            invokestatic org.graalvm.compiler.nodes.LogicNode.or:(Lorg/graalvm/compiler/nodes/LogicNode;Lorg/graalvm/compiler/nodes/LogicNode;D)Lorg/graalvm/compiler/nodes/LogicNode;
            astore 8 /* newNode */
        start local 8 // org.graalvm.compiler.nodes.LogicNode newNode
        45: .line 261
            aload 4 /* instanceOfDynamicNode */
            aload 8 /* newNode */
            invokevirtual org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 8 // org.graalvm.compiler.nodes.LogicNode newNode
        end local 7 // org.graalvm.compiler.nodes.LogicNode newTypeCheck
        end local 6 // org.graalvm.compiler.nodes.ValueNode object
        end local 5 // org.graalvm.compiler.nodes.ValueNode mirror
        end local 4 // org.graalvm.compiler.nodes.java.InstanceOfDynamicNode instanceOfDynamicNode
        46: .line 264
            goto 164
      StackMap locals:
      StackMap stack:
        47: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode
            ifeq 51
        48: .line 265
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areDeoptsFixed:()Z
            ifeq 164
        49: .line 266
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.instanceofSnippets:Lorg/graalvm/compiler/hotspot/replacements/InstanceOfSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.ClassIsAssignableFromNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/calc/FloatingNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        50: .line 268
            goto 164
      StackMap locals:
      StackMap stack:
        51: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.NewInstanceNode
            ifeq 55
        52: .line 269
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        53: .line 270
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.NewInstanceNode
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/NewInstanceNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        54: .line 272
            goto 164
      StackMap locals:
      StackMap stack:
        55: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.DynamicNewInstanceNode
            ifeq 64
        56: .line 273
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.DynamicNewInstanceNode
            astore 4 /* newInstanceNode */
        start local 4 // org.graalvm.compiler.nodes.java.DynamicNewInstanceNode newInstanceNode
        57: .line 274
            aload 4 /* newInstanceNode */
            invokevirtual org.graalvm.compiler.nodes.java.DynamicNewInstanceNode.getClassClass:()Lorg/graalvm/compiler/nodes/ValueNode;
            ifnonnull 61
        58: .line 275
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.constantReflection:Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
            ldc Ljava/lang/Class;
            invokevirtual jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider.forObject:(Ljava/lang/Object;)Ljdk/vm/ci/meta/JavaConstant;
            astore 5 /* classClassMirror */
        start local 5 // jdk.vm.ci.meta.JavaConstant classClassMirror
        59: .line 276
            aload 5 /* classClassMirror */
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 3 /* graph */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            astore 6 /* classClass */
        start local 6 // org.graalvm.compiler.nodes.ConstantNode classClass
        60: .line 277
            aload 4 /* newInstanceNode */
            aload 6 /* classClass */
            invokevirtual org.graalvm.compiler.nodes.java.DynamicNewInstanceNode.setClassClass:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        end local 6 // org.graalvm.compiler.nodes.ConstantNode classClass
        end local 5 // jdk.vm.ci.meta.JavaConstant classClassMirror
        61: .line 279
      StackMap locals: org.graalvm.compiler.nodes.java.DynamicNewInstanceNode
      StackMap stack:
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        62: .line 280
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
            aload 4 /* newInstanceNode */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/DynamicNewInstanceNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        end local 4 // org.graalvm.compiler.nodes.java.DynamicNewInstanceNode newInstanceNode
        63: .line 282
            goto 164
      StackMap locals:
      StackMap stack:
        64: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.NewArrayNode
            ifeq 68
        65: .line 283
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        66: .line 284
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.NewArrayNode
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/NewArrayNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        67: .line 286
            goto 164
      StackMap locals:
      StackMap stack:
        68: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.DynamicNewArrayNode
            ifeq 77
        69: .line 287
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.DynamicNewArrayNode
            astore 4 /* dynamicNewArrayNode */
        start local 4 // org.graalvm.compiler.nodes.java.DynamicNewArrayNode dynamicNewArrayNode
        70: .line 288
            aload 4 /* dynamicNewArrayNode */
            invokevirtual org.graalvm.compiler.nodes.java.DynamicNewArrayNode.getVoidClass:()Lorg/graalvm/compiler/nodes/ValueNode;
            ifnonnull 74
        71: .line 289
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.constantReflection:Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            invokevirtual jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider.forObject:(Ljava/lang/Object;)Ljdk/vm/ci/meta/JavaConstant;
            astore 5 /* voidClassMirror */
        start local 5 // jdk.vm.ci.meta.JavaConstant voidClassMirror
        72: .line 290
            aload 5 /* voidClassMirror */
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 3 /* graph */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            astore 6 /* voidClass */
        start local 6 // org.graalvm.compiler.nodes.ConstantNode voidClass
        73: .line 291
            aload 4 /* dynamicNewArrayNode */
            aload 6 /* voidClass */
            invokevirtual org.graalvm.compiler.nodes.java.DynamicNewArrayNode.setVoidClass:(Lorg/graalvm/compiler/nodes/ValueNode;)V
        end local 6 // org.graalvm.compiler.nodes.ConstantNode voidClass
        end local 5 // jdk.vm.ci.meta.JavaConstant voidClassMirror
        74: .line 293
      StackMap locals: org.graalvm.compiler.nodes.java.DynamicNewArrayNode
      StackMap stack:
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        75: .line 294
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
            aload 4 /* dynamicNewArrayNode */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/DynamicNewArrayNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        end local 4 // org.graalvm.compiler.nodes.java.DynamicNewArrayNode dynamicNewArrayNode
        76: .line 296
            goto 164
      StackMap locals:
      StackMap stack:
        77: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.debug.VerifyHeapNode
            ifeq 81
        78: .line 297
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        79: .line 298
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.debug.VerifyHeapNode
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/debug/VerifyHeapNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        80: .line 300
            goto 164
      StackMap locals:
      StackMap stack:
        81: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.RawMonitorEnterNode
            ifeq 85
        82: .line 301
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        83: .line 302
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.monitorSnippets:Lorg/graalvm/compiler/hotspot/replacements/MonitorSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.RawMonitorEnterNode
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.MonitorSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/RawMonitorEnterNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        84: .line 304
            goto 164
      StackMap locals:
      StackMap stack:
        85: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.MonitorExitNode
            ifeq 89
        86: .line 305
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
        87: .line 306
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.monitorSnippets:Lorg/graalvm/compiler/hotspot/replacements/MonitorSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.MonitorExitNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.MonitorSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/MonitorExitNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        88: .line 308
            goto 164
      StackMap locals:
      StackMap stack:
        89: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopyNode
            ifeq 92
        90: .line 309
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.arraycopySnippets:Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopyNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopyNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        91: .line 310
            goto 164
      StackMap locals:
      StackMap stack:
        92: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySlowPathNode
            ifeq 95
        93: .line 311
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.arraycopySnippets:Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySlowPathNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySlowPathNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        94: .line 312
            goto 164
      StackMap locals:
      StackMap stack:
        95: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopyUnrollNode
            ifeq 98
        96: .line 313
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.arraycopySnippets:Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopySnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopyUnrollNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/replacements/arraycopy/ArrayCopyUnrollNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
        97: .line 314
            goto 164
      StackMap locals:
      StackMap stack:
        98: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.G1PreWriteBarrier
            ifeq 101
        99: .line 315
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.G1PreWriteBarrier
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/G1PreWriteBarrier;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       100: .line 316
            goto 164
      StackMap locals:
      StackMap stack:
       101: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.G1PostWriteBarrier
            ifeq 104
       102: .line 317
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.G1PostWriteBarrier
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/G1PostWriteBarrier;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       103: .line 318
            goto 164
      StackMap locals:
      StackMap stack:
       104: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.G1ReferentFieldReadBarrier
            ifeq 107
       105: .line 319
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.G1ReferentFieldReadBarrier
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/G1ReferentFieldReadBarrier;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       106: .line 320
            goto 164
      StackMap locals:
      StackMap stack:
       107: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.SerialWriteBarrier
            ifeq 110
       108: .line 321
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.SerialWriteBarrier
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/SerialWriteBarrier;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       109: .line 322
            goto 164
      StackMap locals:
      StackMap stack:
       110: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.SerialArrayRangeWriteBarrier
            ifeq 113
       111: .line 323
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.SerialArrayRangeWriteBarrier
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/SerialArrayRangeWriteBarrier;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       112: .line 324
            goto 164
      StackMap locals:
      StackMap stack:
       113: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.G1ArrayRangePreWriteBarrier
            ifeq 116
       114: .line 325
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.G1ArrayRangePreWriteBarrier
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/G1ArrayRangePreWriteBarrier;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       115: .line 326
            goto 164
      StackMap locals:
      StackMap stack:
       116: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.G1ArrayRangePostWriteBarrier
            ifeq 119
       117: .line 327
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.writeBarrierSnippets:Lorg/graalvm/compiler/hotspot/replacements/WriteBarrierSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.G1ArrayRangePostWriteBarrier
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/G1ArrayRangePostWriteBarrier;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       118: .line 328
            goto 164
      StackMap locals:
      StackMap stack:
       119: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.NewMultiArrayNode
            ifeq 123
       120: .line 329
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
       121: .line 330
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.newObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/NewObjectSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.NewMultiArrayNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/NewMultiArrayNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       122: .line 332
            goto 164
      StackMap locals:
      StackMap stack:
       123: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.java.LoadExceptionObjectNode
            ifeq 126
       124: .line 333
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.exceptionObjectSnippets:Lorg/graalvm/compiler/hotspot/replacements/LoadExceptionObjectSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.java.LoadExceptionObjectNode
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.registers:Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.LoadExceptionObjectSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/java/LoadExceptionObjectNode;Lorg/graalvm/compiler/hotspot/meta/HotSpotRegistersProvider;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       125: .line 334
            goto 164
      StackMap locals:
      StackMap stack:
       126: aload 1 /* n */
            instanceof org.graalvm.compiler.replacements.nodes.AssertionNode
            ifeq 129
       127: .line 335
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.assertionSnippets:Lorg/graalvm/compiler/hotspot/replacements/AssertionSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.replacements.nodes.AssertionNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.AssertionSnippets$Templates.lower:(Lorg/graalvm/compiler/replacements/nodes/AssertionNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       128: .line 336
            goto 164
      StackMap locals:
      StackMap stack:
       129: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.debug.StringToBytesNode
            ifeq 133
       130: .line 337
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areDeoptsFixed:()Z
            ifeq 164
       131: .line 338
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.stringToBytesSnippets:Lorg/graalvm/compiler/hotspot/replacements/StringToBytesSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.nodes.debug.StringToBytesNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.StringToBytesSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/debug/StringToBytesNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       132: .line 340
            goto 164
      StackMap locals:
      StackMap stack:
       133: aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.calc.IntegerDivRemNode
            ifne 164
       134: .line 343
            aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.AbstractDeoptimizeNode
            ifne 164
            aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.UnwindNode
            ifne 164
            aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.calc.RemNode
            ifne 164
            aload 1 /* n */
            instanceof org.graalvm.compiler.nodes.SafepointNode
            ifne 164
       135: .line 345
            aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.ClassGetHubNode
            ifeq 138
       136: .line 346
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.ClassGetHubNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerClassGetHubNode:(Lorg/graalvm/compiler/hotspot/replacements/ClassGetHubNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       137: .line 347
            goto 164
      StackMap locals:
      StackMap stack:
       138: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.HubGetClassNode
            ifeq 141
       139: .line 348
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.HubGetClassNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerHubGetClassNode:(Lorg/graalvm/compiler/hotspot/replacements/HubGetClassNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       140: .line 349
            goto 164
      StackMap locals:
      StackMap stack:
       141: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode
            ifeq 144
       142: .line 350
            aload 0 /* this */
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerKlassLayoutHelperNode:(Lorg/graalvm/compiler/hotspot/replacements/KlassLayoutHelperNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       143: .line 351
            goto 164
      StackMap locals:
      StackMap stack:
       144: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode
            ifeq 148
       145: .line 352
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.areFrameStatesAtDeopts:()Z
            ifeq 164
       146: .line 353
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode
            invokestatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.lowerComputeObjectAddressNode:(Lorg/graalvm/compiler/hotspot/nodes/ComputeObjectAddressNode;)V
       147: .line 355
            goto 164
      StackMap locals:
      StackMap stack:
       148: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.replacements.IdentityHashCodeNode
            ifeq 151
       149: .line 356
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.hashCodeSnippets:Lorg/graalvm/compiler/hotspot/replacements/HashCodeSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.replacements.IdentityHashCodeNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HashCodeSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/replacements/IdentityHashCodeNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       150: .line 357
            goto 164
      StackMap locals:
      StackMap stack:
       151: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.aot.ResolveConstantNode
            ifeq 154
       152: .line 358
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.resolveConstantSnippets:Lorg/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.aot.ResolveConstantNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/aot/ResolveConstantNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       153: .line 359
            goto 164
      StackMap locals:
      StackMap stack:
       154: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.aot.ResolveMethodAndLoadCountersNode
            ifeq 157
       155: .line 360
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.resolveConstantSnippets:Lorg/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.aot.ResolveMethodAndLoadCountersNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/aot/ResolveMethodAndLoadCountersNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       156: .line 361
            goto 164
      StackMap locals:
      StackMap stack:
       157: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.aot.InitializeKlassNode
            ifeq 160
       158: .line 362
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.resolveConstantSnippets:Lorg/graalvm/compiler/hotspot/replacements/aot/ResolveConstantSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.aot.InitializeKlassNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/aot/InitializeKlassNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       159: .line 363
            goto 164
      StackMap locals:
      StackMap stack:
       160: aload 1 /* n */
            instanceof org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode
            ifeq 163
       161: .line 364
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.profileSnippets:Lorg/graalvm/compiler/hotspot/replacements/profiling/ProfileSnippets$Templates;
            aload 1 /* n */
            checkcast org.graalvm.compiler.hotspot.nodes.profiling.ProfileNode
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates.lower:(Lorg/graalvm/compiler/hotspot/nodes/profiling/ProfileNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       162: .line 365
            goto 164
       163: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* n */
            aload 2 /* tool */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.lower:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
       164: .line 368
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.graph.Node n
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0  165     0                   this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0  165     1                      n  Lorg/graalvm/compiler/graph/Node;
            0  165     2                   tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            1  165     3                  graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
           21   29     4         instanceOfNode  Lorg/graalvm/compiler/nodes/java/InstanceOfNode;
           26   29     5                 object  Lorg/graalvm/compiler/nodes/ValueNode;
           27   29     6           newTypeCheck  Lorg/graalvm/compiler/nodes/LogicNode;
           28   29     7                newNode  Lorg/graalvm/compiler/nodes/LogicNode;
           32   46     4  instanceOfDynamicNode  Lorg/graalvm/compiler/nodes/java/InstanceOfDynamicNode;
           36   46     5                 mirror  Lorg/graalvm/compiler/nodes/ValueNode;
           38   39     6            classGetHub  Lorg/graalvm/compiler/hotspot/replacements/ClassGetHubNode;
           41   46     6                 object  Lorg/graalvm/compiler/nodes/ValueNode;
           44   46     7           newTypeCheck  Lorg/graalvm/compiler/nodes/LogicNode;
           45   46     8                newNode  Lorg/graalvm/compiler/nodes/LogicNode;
           57   63     4        newInstanceNode  Lorg/graalvm/compiler/nodes/java/DynamicNewInstanceNode;
           59   61     5       classClassMirror  Ljdk/vm/ci/meta/JavaConstant;
           60   61     6             classClass  Lorg/graalvm/compiler/nodes/ConstantNode;
           70   76     4    dynamicNewArrayNode  Lorg/graalvm/compiler/nodes/java/DynamicNewArrayNode;
           72   74     5        voidClassMirror  Ljdk/vm/ci/meta/JavaConstant;
           73   74     6              voidClass  Lorg/graalvm/compiler/nodes/ConstantNode;
    MethodParameters:
      Name  Flags
      n     
      tool  

  private static void lowerComputeObjectAddressNode(org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode);
    descriptor: (Lorg/graalvm/compiler/hotspot/nodes/ComputeObjectAddressNode;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode n
         0: .line 375
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode.usages:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 11
      StackMap locals: org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.graph.Node
            astore 1 /* use */
        start local 1 // org.graalvm.compiler.graph.Node use
         2: .line 376
            aload 1 /* use */
            instanceof org.graalvm.compiler.nodes.FixedNode
            ifeq 10
         3: .line 377
            aload 1 /* use */
            checkcast org.graalvm.compiler.nodes.FixedNode
            astore 3 /* fixed */
        start local 3 // org.graalvm.compiler.nodes.FixedNode fixed
         4: .line 378
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 4 /* graph */
        start local 4 // org.graalvm.compiler.nodes.StructuredGraph graph
         5: .line 379
            aload 4 /* graph */
            new org.graalvm.compiler.hotspot.nodes.GetObjectAddressNode
            dup
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode.getObject:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokespecial org.graalvm.compiler.hotspot.nodes.GetObjectAddressNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.hotspot.nodes.GetObjectAddressNode
            astore 5 /* address */
        start local 5 // org.graalvm.compiler.hotspot.nodes.GetObjectAddressNode address
         6: .line 380
            aload 4 /* graph */
            aload 3 /* fixed */
            aload 5 /* address */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
         7: .line 381
            aload 4 /* graph */
            new org.graalvm.compiler.nodes.calc.AddNode
            dup
            aload 5 /* address */
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode.getOffset:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokespecial org.graalvm.compiler.nodes.calc.AddNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addOrUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.calc.AddNode
            astore 6 /* add */
        start local 6 // org.graalvm.compiler.nodes.calc.AddNode add
         8: .line 382
            aload 1 /* use */
            aload 0 /* n */
            aload 6 /* add */
            invokevirtual org.graalvm.compiler.graph.Node.replaceFirstInput:(Lorg/graalvm/compiler/graph/Node;Lorg/graalvm/compiler/graph/Node;)V
        end local 6 // org.graalvm.compiler.nodes.calc.AddNode add
        end local 5 // org.graalvm.compiler.hotspot.nodes.GetObjectAddressNode address
        end local 4 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 3 // org.graalvm.compiler.nodes.FixedNode fixed
         9: .line 383
            goto 11
        10: .line 384
      StackMap locals: org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode org.graalvm.compiler.graph.Node java.util.Iterator
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Unexpected floating use of ComputeObjectAddressNode "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* n */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 1 // org.graalvm.compiler.graph.Node use
        11: .line 375
      StackMap locals: org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode top java.util.Iterator
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        12: .line 387
            aload 0 /* n */
            invokestatic org.graalvm.compiler.nodes.util.GraphUtil.unlinkFixedNode:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
        13: .line 388
            aload 0 /* n */
            invokevirtual org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode.safeDelete:()V
        14: .line 389
            return
        end local 0 // org.graalvm.compiler.hotspot.nodes.ComputeObjectAddressNode n
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0        n  Lorg/graalvm/compiler/hotspot/nodes/ComputeObjectAddressNode;
            2   11     1      use  Lorg/graalvm/compiler/graph/Node;
            4    9     3    fixed  Lorg/graalvm/compiler/nodes/FixedNode;
            5    9     4    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            6    9     5  address  Lorg/graalvm/compiler/hotspot/nodes/GetObjectAddressNode;
            8    9     6      add  Lorg/graalvm/compiler/nodes/calc/AddNode;
    MethodParameters:
      Name  Flags
      n     

  private void lowerKlassLayoutHelperNode(org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/hotspot/replacements/KlassLayoutHelperNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode n
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 392
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.HIGH_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
            if_acmpne 2
         1: .line 393
            return
         2: .line 395
      StackMap locals:
      StackMap stack:
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 396
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 4
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode.getHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 397
      StackMap locals: org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            aload 0 /* this */
            aload 3 /* graph */
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode.getHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.klassLayoutHelperOffset:I
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 4 /* address */
        start local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         5: .line 398
            aload 1 /* n */
            aload 3 /* graph */
            new org.graalvm.compiler.nodes.memory.FloatingReadNode
            dup
            aload 4 /* address */
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.KLASS_LAYOUT_HELPER_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            aconst_null
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.FloatingReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/nodes/memory/MemoryNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            invokevirtual org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
         6: .line 399
            return
        end local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.hotspot.replacements.KlassLayoutHelperNode n
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    7     1        n  Lorg/graalvm/compiler/hotspot/replacements/KlassLayoutHelperNode;
            0    7     2     tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            3    7     3    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5    7     4  address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
    MethodParameters:
      Name  Flags
      n     
      tool  

  private void lowerHubGetClassNode(org.graalvm.compiler.hotspot.replacements.HubGetClassNode, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/hotspot/replacements/HubGetClassNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.hotspot.replacements.HubGetClassNode n
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 402
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.HIGH_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
            if_acmpne 2
         1: .line 403
            return
         2: .line 406
      StackMap locals:
      StackMap stack:
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 407
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 4
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.getHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 408
      StackMap locals: org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            aload 0 /* this */
            aload 3 /* graph */
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.getHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.classMirrorOffset:I
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 4 /* address */
        start local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         5: .line 409
            aload 3 /* graph */
            new org.graalvm.compiler.nodes.memory.FloatingReadNode
            dup
            aload 4 /* address */
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.CLASS_MIRROR_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            aconst_null
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.FloatingReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/nodes/memory/MemoryNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 5 /* read */
        start local 5 // org.graalvm.compiler.nodes.memory.FloatingReadNode read
         6: .line 410
            aload 1 /* n */
            aload 5 /* read */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
         7: .line 411
            return
        end local 5 // org.graalvm.compiler.nodes.memory.FloatingReadNode read
        end local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.hotspot.replacements.HubGetClassNode n
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    8     1        n  Lorg/graalvm/compiler/hotspot/replacements/HubGetClassNode;
            0    8     2     tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            3    8     3    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5    8     4  address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            6    8     5     read  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
    MethodParameters:
      Name  Flags
      n     
      tool  

  private void lowerClassGetHubNode(org.graalvm.compiler.hotspot.replacements.ClassGetHubNode, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/hotspot/replacements/ClassGetHubNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=6, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.hotspot.replacements.ClassGetHubNode n
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 414
            aload 2 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.HIGH_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
            if_acmpne 2
         1: .line 415
            return
         2: .line 418
      StackMap locals:
      StackMap stack:
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         3: .line 419
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 4
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 420
      StackMap locals: org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            aload 0 /* this */
            aload 3 /* graph */
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.klassOffset:I
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 4 /* address */
        start local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         5: .line 421
            aload 3 /* graph */
            new org.graalvm.compiler.nodes.memory.FloatingReadNode
            dup
            aload 4 /* address */
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.CLASS_KLASS_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            aconst_null
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 1 /* n */
            invokevirtual org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.getGuard:()Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.FloatingReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/nodes/memory/MemoryNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 5 /* read */
        start local 5 // org.graalvm.compiler.nodes.memory.FloatingReadNode read
         6: .line 422
            aload 1 /* n */
            aload 5 /* read */
            invokevirtual org.graalvm.compiler.hotspot.replacements.ClassGetHubNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
         7: .line 423
            return
        end local 5 // org.graalvm.compiler.nodes.memory.FloatingReadNode read
        end local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.hotspot.replacements.ClassGetHubNode n
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    8     1        n  Lorg/graalvm/compiler/hotspot/replacements/ClassGetHubNode;
            0    8     2     tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            3    8     3    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            5    8     4  address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            6    8     5     read  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
    MethodParameters:
      Name  Flags
      n     
      tool  

  private void lowerInvoke(org.graalvm.compiler.nodes.Invoke, org.graalvm.compiler.nodes.spi.LoweringTool, org.graalvm.compiler.nodes.StructuredGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/Invoke;Lorg/graalvm/compiler/nodes/spi/LoweringTool;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=11, locals=17, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.Invoke invoke
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         0: .line 426
            aload 1 /* invoke */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            instanceof org.graalvm.compiler.nodes.java.MethodCallTargetNode
            ifeq 38
         1: .line 427
            aload 1 /* invoke */
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
            astore 4 /* callTarget */
        start local 4 // org.graalvm.compiler.nodes.java.MethodCallTargetNode callTarget
         2: .line 428
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.arguments:()Lorg/graalvm/compiler/graph/NodeInputList;
            astore 5 /* parameters */
        start local 5 // org.graalvm.compiler.graph.NodeInputList parameters
         3: .line 429
            aload 5 /* parameters */
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            ifgt 4
            aconst_null
            goto 5
      StackMap locals: org.graalvm.compiler.nodes.java.MethodCallTargetNode org.graalvm.compiler.graph.NodeInputList
      StackMap stack:
         4: aload 5 /* parameters */
            iconst_0
            invokevirtual org.graalvm.compiler.graph.NodeInputList.get:(I)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
      StackMap locals:
      StackMap stack: org.graalvm.compiler.nodes.ValueNode
         5: astore 6 /* receiver */
        start local 6 // org.graalvm.compiler.nodes.ValueNode receiver
         6: .line 430
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.isStatic:()Z
            ifne 11
            aload 6 /* receiver */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            instanceof org.graalvm.compiler.core.common.type.ObjectStamp
            ifeq 11
            aload 6 /* receiver */
            invokestatic org.graalvm.compiler.nodes.type.StampTool.isPointerNonNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifne 11
         7: .line 431
            aload 0 /* this */
            aload 6 /* receiver */
            aload 1 /* invoke */
            invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createNullCheck:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            astore 7 /* receiverNullCheck */
        start local 7 // org.graalvm.compiler.nodes.extended.GuardingNode receiverNullCheck
         8: .line 432
            aload 3 /* graph */
            new org.graalvm.compiler.nodes.PiNode
            dup
            aload 6 /* receiver */
            aload 6 /* receiver */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            checkcast org.graalvm.compiler.core.common.type.ObjectStamp
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.objectNonNull:()Lorg/graalvm/compiler/core/common/type/Stamp;
            invokevirtual org.graalvm.compiler.core.common.type.ObjectStamp.join:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 7 /* receiverNullCheck */
            checkcast org.graalvm.compiler.nodes.ValueNode
            invokespecial org.graalvm.compiler.nodes.PiNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.PiNode
            astore 8 /* nonNullReceiver */
        start local 8 // org.graalvm.compiler.nodes.PiNode nonNullReceiver
         9: .line 433
            aload 5 /* parameters */
            iconst_0
            aload 8 /* nonNullReceiver */
            invokevirtual org.graalvm.compiler.graph.NodeInputList.set:(ILorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            pop
        10: .line 434
            aload 8 /* nonNullReceiver */
            astore 6 /* receiver */
        end local 8 // org.graalvm.compiler.nodes.PiNode nonNullReceiver
        end local 7 // org.graalvm.compiler.nodes.extended.GuardingNode receiverNullCheck
        11: .line 436
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.isStatic:()Z
            ifeq 12
            aconst_null
            goto 13
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.Signature
        12: aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
      StackMap locals: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.java.MethodCallTargetNode org.graalvm.compiler.graph.NodeInputList org.graalvm.compiler.nodes.ValueNode
      StackMap stack: jdk.vm.ci.meta.Signature jdk.vm.ci.meta.ResolvedJavaType
        13: invokeinterface jdk.vm.ci.meta.Signature.toParameterTypes:(Ljdk/vm/ci/meta/JavaType;)[Ljdk/vm/ci/meta/JavaType;
            astore 7 /* signature */
        start local 7 // jdk.vm.ci.meta.JavaType[] signature
        14: .line 438
            aconst_null
            astore 8 /* loweredCallTarget */
        start local 8 // org.graalvm.compiler.nodes.LoweredCallTargetNode loweredCallTarget
        15: .line 439
            getstatic org.graalvm.compiler.core.common.GraalOptions.InlineVTableStubs:Lorg/graalvm/compiler/options/OptionValue;
            invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 31
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.invokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
            invokevirtual org.graalvm.compiler.nodes.CallTargetNode$InvokeKind.isIndirect:()Z
            ifeq 31
            getstatic org.graalvm.compiler.core.common.GraalOptions.AlwaysInlineVTableStubs:Lorg/graalvm/compiler/options/OptionValue;
            invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 16
            aload 1 /* invoke */
            invokeinterface org.graalvm.compiler.nodes.Invoke.isPolymorphic:()Z
            ifeq 31
        16: .line 440
      StackMap locals: jdk.vm.ci.meta.JavaType[] org.graalvm.compiler.nodes.LoweredCallTargetNode
      StackMap stack:
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod
            astore 9 /* hsMethod */
        start local 9 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod hsMethod
        17: .line 441
            aload 1 /* invoke */
            invokeinterface org.graalvm.compiler.nodes.Invoke.getReceiverType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 10 /* receiverType */
        start local 10 // jdk.vm.ci.meta.ResolvedJavaType receiverType
        18: .line 442
            aload 9 /* hsMethod */
            aload 10 /* receiverType */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.isInVirtualMethodTable:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 31
        19: .line 443
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getTarget:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.wordJavaKind:Ljdk/vm/ci/meta/JavaKind;
            astore 11 /* wordKind */
        start local 11 // jdk.vm.ci.meta.JavaKind wordKind
        20: .line 444
            aload 0 /* this */
            aload 3 /* graph */
            aload 6 /* receiver */
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createReadHub:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 12 /* hub */
        start local 12 // org.graalvm.compiler.nodes.ValueNode hub
        21: .line 446
            aload 0 /* this */
            aload 3 /* graph */
            aload 12 /* hub */
            aload 9 /* hsMethod */
            aload 10 /* receiverType */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createReadVirtualMethod:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/nodes/memory/ReadNode;
            astore 13 /* metaspaceMethod */
        start local 13 // org.graalvm.compiler.nodes.memory.ReadNode metaspaceMethod
        22: .line 450
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.methodCompiledEntryOffset:I
            istore 14 /* methodCompiledEntryOffset */
        start local 14 // int methodCompiledEntryOffset
        23: .line 451
            aload 0 /* this */
            aload 3 /* graph */
            aload 13 /* metaspaceMethod */
            iload 14 /* methodCompiledEntryOffset */
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 15 /* address */
        start local 15 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        24: .line 452
            aload 3 /* graph */
            new org.graalvm.compiler.nodes.memory.ReadNode
            dup
            aload 15 /* address */
            invokestatic org.graalvm.compiler.core.common.LocationIdentity.any:()Lorg/graalvm/compiler/core/common/LocationIdentity;
            aload 11 /* wordKind */
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.ReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.ReadNode
            astore 16 /* compiledEntry */
        start local 16 // org.graalvm.compiler.nodes.memory.ReadNode compiledEntry
        25: .line 454
            aload 3 /* graph */
            new org.graalvm.compiler.hotspot.nodes.HotSpotIndirectCallTargetNode
            dup
            aload 13 /* metaspaceMethod */
            aload 16 /* compiledEntry */
            aload 5 /* parameters */
            aload 5 /* parameters */
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            anewarray org.graalvm.compiler.nodes.ValueNode
            invokevirtual org.graalvm.compiler.graph.NodeInputList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValueNode[]
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.returnStamp:()Lorg/graalvm/compiler/core/common/type/StampPair;
        26: .line 455
            aload 7 /* signature */
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
        27: .line 456
            getstatic jdk.vm.ci.hotspot.HotSpotCallingConventionType.JavaCall:Ljdk/vm/ci/hotspot/HotSpotCallingConventionType;
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.invokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
            invokespecial org.graalvm.compiler.hotspot.nodes.HotSpotIndirectCallTargetNode.<init>:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;[Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/StampPair;[Ljdk/vm/ci/meta/JavaType;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CallingConvention$Type;Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;)V
        28: .line 454
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LoweredCallTargetNode
            astore 8 /* loweredCallTarget */
        29: .line 458
            aload 3 /* graph */
            aload 1 /* invoke */
            invokeinterface org.graalvm.compiler.nodes.Invoke.asNode:()Lorg/graalvm/compiler/nodes/FixedNode;
            aload 13 /* metaspaceMethod */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
        30: .line 459
            aload 3 /* graph */
            aload 13 /* metaspaceMethod */
            aload 16 /* compiledEntry */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addAfterFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/nodes/FixedNode;)V
        end local 16 // org.graalvm.compiler.nodes.memory.ReadNode compiledEntry
        end local 15 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 14 // int methodCompiledEntryOffset
        end local 13 // org.graalvm.compiler.nodes.memory.ReadNode metaspaceMethod
        end local 12 // org.graalvm.compiler.nodes.ValueNode hub
        end local 11 // jdk.vm.ci.meta.JavaKind wordKind
        end local 10 // jdk.vm.ci.meta.ResolvedJavaType receiverType
        end local 9 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod hsMethod
        31: .line 463
      StackMap locals:
      StackMap stack:
            aload 8 /* loweredCallTarget */
            ifnonnull 37
        32: .line 464
            aload 3 /* graph */
            new org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode
            dup
            aload 5 /* parameters */
            aload 5 /* parameters */
            invokevirtual org.graalvm.compiler.graph.NodeInputList.size:()I
            anewarray org.graalvm.compiler.nodes.ValueNode
            invokevirtual org.graalvm.compiler.graph.NodeInputList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.ValueNode[]
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.returnStamp:()Lorg/graalvm/compiler/core/common/type/StampPair;
        33: .line 465
            aload 7 /* signature */
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
        34: .line 466
            getstatic jdk.vm.ci.hotspot.HotSpotCallingConventionType.JavaCall:Ljdk/vm/ci/hotspot/HotSpotCallingConventionType;
        35: .line 467
            aload 4 /* callTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.invokeKind:()Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;
            invokespecial org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode.<init>:([Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/core/common/type/StampPair;[Ljdk/vm/ci/meta/JavaType;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/code/CallingConvention$Type;Lorg/graalvm/compiler/nodes/CallTargetNode$InvokeKind;)V
        36: .line 464
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.LoweredCallTargetNode
            astore 8 /* loweredCallTarget */
        37: .line 469
      StackMap locals:
      StackMap stack:
            aload 4 /* callTarget */
            aload 8 /* loweredCallTarget */
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 8 // org.graalvm.compiler.nodes.LoweredCallTargetNode loweredCallTarget
        end local 7 // jdk.vm.ci.meta.JavaType[] signature
        end local 6 // org.graalvm.compiler.nodes.ValueNode receiver
        end local 5 // org.graalvm.compiler.graph.NodeInputList parameters
        end local 4 // org.graalvm.compiler.nodes.java.MethodCallTargetNode callTarget
        38: .line 471
      StackMap locals: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider org.graalvm.compiler.nodes.Invoke org.graalvm.compiler.nodes.spi.LoweringTool org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.nodes.Invoke invoke
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   39     0                       this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0   39     1                     invoke  Lorg/graalvm/compiler/nodes/Invoke;
            0   39     2                       tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            0   39     3                      graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            2   38     4                 callTarget  Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
            3   38     5                 parameters  Lorg/graalvm/compiler/graph/NodeInputList<Lorg/graalvm/compiler/nodes/ValueNode;>;
            6   38     6                   receiver  Lorg/graalvm/compiler/nodes/ValueNode;
            8   11     7          receiverNullCheck  Lorg/graalvm/compiler/nodes/extended/GuardingNode;
            9   11     8            nonNullReceiver  Lorg/graalvm/compiler/nodes/PiNode;
           14   38     7                  signature  [Ljdk/vm/ci/meta/JavaType;
           15   38     8          loweredCallTarget  Lorg/graalvm/compiler/nodes/LoweredCallTargetNode;
           17   31     9                   hsMethod  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
           18   31    10               receiverType  Ljdk/vm/ci/meta/ResolvedJavaType;
           20   31    11                   wordKind  Ljdk/vm/ci/meta/JavaKind;
           21   31    12                        hub  Lorg/graalvm/compiler/nodes/ValueNode;
           22   31    13            metaspaceMethod  Lorg/graalvm/compiler/nodes/memory/ReadNode;
           23   31    14  methodCompiledEntryOffset  I
           24   31    15                    address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
           25   31    16              compiledEntry  Lorg/graalvm/compiler/nodes/memory/ReadNode;
    MethodParameters:
        Name  Flags
      invoke  
      tool    
      graph   

  protected org.graalvm.compiler.core.common.type.Stamp loadStamp(org.graalvm.compiler.core.common.type.Stamp, jdk.vm.ci.meta.JavaKind, boolean);
    descriptor: (Lorg/graalvm/compiler/core/common/type/Stamp;Ljdk/vm/ci/meta/JavaKind;Z)Lorg/graalvm/compiler/core/common/type/Stamp;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
        start local 2 // jdk.vm.ci.meta.JavaKind kind
        start local 3 // boolean compressible
         0: .line 475
            aload 2 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 2
            iload 3 /* compressible */
            ifeq 2
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedOops:Z
            ifeq 2
         1: .line 476
            aload 1 /* stamp */
            checkcast org.graalvm.compiler.core.common.type.ObjectStamp
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getOopEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            invokestatic org.graalvm.compiler.hotspot.nodes.type.NarrowOopStamp.compressed:(Lorg/graalvm/compiler/core/common/type/AbstractObjectStamp;Lorg/graalvm/compiler/hotspot/CompressEncoding;)Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
         2: .line 478
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* stamp */
            aload 2 /* kind */
            iload 3 /* compressible */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.loadStamp:(Lorg/graalvm/compiler/core/common/type/Stamp;Ljdk/vm/ci/meta/JavaKind;Z)Lorg/graalvm/compiler/core/common/type/Stamp;
            areturn
        end local 3 // boolean compressible
        end local 2 // jdk.vm.ci.meta.JavaKind kind
        end local 1 // org.graalvm.compiler.core.common.type.Stamp stamp
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1         stamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            0    3     2          kind  Ljdk/vm/ci/meta/JavaKind;
            0    3     3  compressible  Z
    MethodParameters:
              Name  Flags
      stamp         
      kind          
      compressible  

  protected org.graalvm.compiler.nodes.ValueNode implicitLoadConvert(jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.nodes.ValueNode, boolean);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.JavaKind kind
        start local 2 // org.graalvm.compiler.nodes.ValueNode value
        start local 3 // boolean compressible
         0: .line 483
            aload 1 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 2
            iload 3 /* compressible */
            ifeq 2
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedOops:Z
            ifeq 2
         1: .line 484
            new org.graalvm.compiler.hotspot.nodes.CompressionNode
            dup
            getstatic org.graalvm.compiler.hotspot.nodes.CompressionNode$CompressionOp.Uncompress:Lorg/graalvm/compiler/hotspot/nodes/CompressionNode$CompressionOp;
            aload 2 /* value */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getOopEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            invokespecial org.graalvm.compiler.hotspot.nodes.CompressionNode.<init>:(Lorg/graalvm/compiler/hotspot/nodes/CompressionNode$CompressionOp;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/hotspot/CompressEncoding;)V
            areturn
         2: .line 486
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* kind */
            aload 2 /* value */
            iload 3 /* compressible */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.implicitLoadConvert:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
            areturn
        end local 3 // boolean compressible
        end local 2 // org.graalvm.compiler.nodes.ValueNode value
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1          kind  Ljdk/vm/ci/meta/JavaKind;
            0    3     2         value  Lorg/graalvm/compiler/nodes/ValueNode;
            0    3     3  compressible  Z
    MethodParameters:
              Name  Flags
      kind          
      value         
      compressible  

  public org.graalvm.compiler.nodes.ValueNode staticFieldBase(org.graalvm.compiler.nodes.StructuredGraph, jdk.vm.ci.meta.ResolvedJavaField);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Ljdk/vm/ci/meta/ResolvedJavaField;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // jdk.vm.ci.meta.ResolvedJavaField f
         0: .line 491
            aload 2 /* f */
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaField
            astore 3 /* field */
        start local 3 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField field
         1: .line 492
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.constantReflection:Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
            aload 3 /* field */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokevirtual jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider.asJavaClass:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaConstant;
            astore 4 /* base */
        start local 4 // jdk.vm.ci.meta.JavaConstant base
         2: .line 493
            aload 4 /* base */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 1 /* graph */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            areturn
        end local 4 // jdk.vm.ci.meta.JavaConstant base
        end local 3 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField field
        end local 2 // jdk.vm.ci.meta.ResolvedJavaField f
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1  graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0    3     2      f  Ljdk/vm/ci/meta/ResolvedJavaField;
            1    3     3  field  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaField;
            2    3     4   base  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
       Name  Flags
      graph  
      f      

  protected org.graalvm.compiler.nodes.ValueNode implicitStoreConvert(jdk.vm.ci.meta.JavaKind, org.graalvm.compiler.nodes.ValueNode, boolean);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.JavaKind kind
        start local 2 // org.graalvm.compiler.nodes.ValueNode value
        start local 3 // boolean compressible
         0: .line 498
            aload 1 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 2
            iload 3 /* compressible */
            ifeq 2
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedOops:Z
            ifeq 2
         1: .line 499
            new org.graalvm.compiler.hotspot.nodes.CompressionNode
            dup
            getstatic org.graalvm.compiler.hotspot.nodes.CompressionNode$CompressionOp.Compress:Lorg/graalvm/compiler/hotspot/nodes/CompressionNode$CompressionOp;
            aload 2 /* value */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getOopEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            invokespecial org.graalvm.compiler.hotspot.nodes.CompressionNode.<init>:(Lorg/graalvm/compiler/hotspot/nodes/CompressionNode$CompressionOp;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/hotspot/CompressEncoding;)V
            areturn
         2: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* kind */
            aload 2 /* value */
            iload 3 /* compressible */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.implicitStoreConvert:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
            areturn
        end local 3 // boolean compressible
        end local 2 // org.graalvm.compiler.nodes.ValueNode value
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1          kind  Ljdk/vm/ci/meta/JavaKind;
            0    3     2         value  Lorg/graalvm/compiler/nodes/ValueNode;
            0    3     3  compressible  Z
    MethodParameters:
              Name  Flags
      kind          
      value         
      compressible  

  protected org.graalvm.compiler.nodes.ValueNode createReadArrayComponentHub(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.FixedNode);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.nodes.ValueNode arrayHub
        start local 3 // org.graalvm.compiler.nodes.FixedNode anchor
         0: .line 510
            aload 0 /* this */
            aload 1 /* graph */
            aload 2 /* arrayHub */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.arrayClassElementOffset:I
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 4 /* address */
        start local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         1: .line 511
            aload 1 /* graph */
            new org.graalvm.compiler.nodes.memory.FloatingReadNode
            dup
            aload 4 /* address */
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.OBJ_ARRAY_KLASS_ELEMENT_KLASS_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            aconst_null
            invokestatic org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.klassNonNull:()Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            aload 3 /* anchor */
            invokestatic org.graalvm.compiler.nodes.AbstractBeginNode.prevBegin:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
            invokespecial org.graalvm.compiler.nodes.memory.FloatingReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/nodes/memory/MemoryNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            areturn
        end local 4 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 3 // org.graalvm.compiler.nodes.FixedNode anchor
        end local 2 // org.graalvm.compiler.nodes.ValueNode arrayHub
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    2     1     graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0    2     2  arrayHub  Lorg/graalvm/compiler/nodes/ValueNode;
            0    2     3    anchor  Lorg/graalvm/compiler/nodes/FixedNode;
            1    2     4   address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
    MethodParameters:
          Name  Flags
      graph     
      arrayHub  
      anchor    

  protected void lowerUnsafeLoadNode(org.graalvm.compiler.nodes.extended.UnsafeLoadNode, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.UnsafeLoadNode load
        start local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 516
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.UnsafeLoadNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         1: .line 517
            aload 1 /* load */
            instanceof org.graalvm.compiler.nodes.extended.GuardedUnsafeLoadNode
            ifne 4
            aload 3 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.allowsFloatingGuards:()Z
            ifne 4
            aload 0 /* this */
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.addReadBarrier:(Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;)Z
            ifeq 4
         2: .line 518
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.unsafeLoadSnippets:Lorg/graalvm/compiler/hotspot/replacements/UnsafeLoadSnippets$Templates;
            aload 1 /* load */
            aload 2 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.UnsafeLoadSnippets$Templates.lower:(Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
         3: .line 519
            goto 5
         4: .line 520
      StackMap locals: org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            aload 0 /* this */
            aload 1 /* load */
            aload 2 /* tool */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.lowerUnsafeLoadNode:(Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
         5: .line 522
      StackMap locals:
      StackMap stack:
            return
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 1 // org.graalvm.compiler.nodes.extended.UnsafeLoadNode load
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    6     1   load  Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;
            0    6     2   tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            1    6     3  graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
    MethodParameters:
      Name  Flags
      load  
      tool  

  private void lowerLoadMethodNode(org.graalvm.compiler.nodes.extended.LoadMethodNode);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/LoadMethodNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.LoadMethodNode loadMethodNode
         0: .line 525
            aload 1 /* loadMethodNode */
            invokevirtual org.graalvm.compiler.nodes.extended.LoadMethodNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 2 /* graph */
        start local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
         1: .line 526
            aload 1 /* loadMethodNode */
            invokevirtual org.graalvm.compiler.nodes.extended.LoadMethodNode.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod
            astore 3 /* method */
        start local 3 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
         2: .line 527
            aload 0 /* this */
            aload 2 /* graph */
            aload 1 /* loadMethodNode */
            invokevirtual org.graalvm.compiler.nodes.extended.LoadMethodNode.getHub:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 3 /* method */
            aload 1 /* loadMethodNode */
            invokevirtual org.graalvm.compiler.nodes.extended.LoadMethodNode.getReceiverType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createReadVirtualMethod:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/nodes/memory/ReadNode;
            astore 4 /* metaspaceMethod */
        start local 4 // org.graalvm.compiler.nodes.memory.ReadNode metaspaceMethod
         3: .line 528
            aload 2 /* graph */
            aload 1 /* loadMethodNode */
            aload 4 /* metaspaceMethod */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.replaceFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/graph/Node;)V
         4: .line 529
            return
        end local 4 // org.graalvm.compiler.nodes.memory.ReadNode metaspaceMethod
        end local 3 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
        end local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 1 // org.graalvm.compiler.nodes.extended.LoadMethodNode loadMethodNode
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0             this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    5     1   loadMethodNode  Lorg/graalvm/compiler/nodes/extended/LoadMethodNode;
            1    5     2            graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            2    5     3           method  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
            3    5     4  metaspaceMethod  Lorg/graalvm/compiler/nodes/memory/ReadNode;
    MethodParameters:
                Name  Flags
      loadMethodNode  

  private static void lowerGetClassNode(org.graalvm.compiler.nodes.extended.GetClassNode, org.graalvm.compiler.nodes.spi.LoweringTool, org.graalvm.compiler.nodes.StructuredGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/GetClassNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.graalvm.compiler.nodes.extended.GetClassNode getClass
        start local 1 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        start local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
         0: .line 532
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getStampProvider:()Lorg/graalvm/compiler/nodes/spi/StampProvider;
            astore 3 /* stampProvider */
        start local 3 // org.graalvm.compiler.nodes.spi.StampProvider stampProvider
         1: .line 533
            aload 2 /* graph */
            new org.graalvm.compiler.nodes.extended.LoadHubNode
            dup
            aload 3 /* stampProvider */
            aload 0 /* getClass */
            invokevirtual org.graalvm.compiler.nodes.extended.GetClassNode.getObject:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokespecial org.graalvm.compiler.nodes.extended.LoadHubNode.<init>:(Lorg/graalvm/compiler/nodes/spi/StampProvider;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.extended.LoadHubNode
            astore 4 /* hub */
        start local 4 // org.graalvm.compiler.nodes.extended.LoadHubNode hub
         2: .line 534
            aload 2 /* graph */
            new org.graalvm.compiler.hotspot.replacements.HubGetClassNode
            dup
            aload 1 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 4 /* hub */
            invokespecial org.graalvm.compiler.hotspot.replacements.HubGetClassNode.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.hotspot.replacements.HubGetClassNode
            astore 5 /* hubGetClass */
        start local 5 // org.graalvm.compiler.hotspot.replacements.HubGetClassNode hubGetClass
         3: .line 535
            aload 0 /* getClass */
            aload 5 /* hubGetClass */
            invokevirtual org.graalvm.compiler.nodes.extended.GetClassNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
         4: .line 536
            aload 4 /* hub */
            aload 1 /* tool */
            invokevirtual org.graalvm.compiler.nodes.extended.LoadHubNode.lower:(Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
         5: .line 537
            aload 5 /* hubGetClass */
            aload 1 /* tool */
            invokevirtual org.graalvm.compiler.hotspot.replacements.HubGetClassNode.lower:(Lorg/graalvm/compiler/nodes/spi/LoweringTool;)V
         6: .line 538
            return
        end local 5 // org.graalvm.compiler.hotspot.replacements.HubGetClassNode hubGetClass
        end local 4 // org.graalvm.compiler.nodes.extended.LoadHubNode hub
        end local 3 // org.graalvm.compiler.nodes.spi.StampProvider stampProvider
        end local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 1 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 0 // org.graalvm.compiler.nodes.extended.GetClassNode getClass
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    7     0       getClass  Lorg/graalvm/compiler/nodes/extended/GetClassNode;
            0    7     1           tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            0    7     2          graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            1    7     3  stampProvider  Lorg/graalvm/compiler/nodes/spi/StampProvider;
            2    7     4            hub  Lorg/graalvm/compiler/nodes/extended/LoadHubNode;
            3    7     5    hubGetClass  Lorg/graalvm/compiler/hotspot/replacements/HubGetClassNode;
    MethodParameters:
          Name  Flags
      getClass  
      tool      
      graph     

  private void lowerStoreHubNode(org.graalvm.compiler.nodes.extended.StoreHubNode, org.graalvm.compiler.nodes.StructuredGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/StoreHubNode;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.StoreHubNode storeHub
        start local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
         0: .line 541
            aload 0 /* this */
            aload 2 /* graph */
            aload 1 /* storeHub */
            invokevirtual org.graalvm.compiler.nodes.extended.StoreHubNode.getObject:()Lorg/graalvm/compiler/nodes/ValueNode;
            aload 1 /* storeHub */
            invokevirtual org.graalvm.compiler.nodes.extended.StoreHubNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createWriteHub:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/memory/WriteNode;
            astore 3 /* hub */
        start local 3 // org.graalvm.compiler.nodes.memory.WriteNode hub
         1: .line 542
            aload 2 /* graph */
            aload 1 /* storeHub */
            aload 3 /* hub */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.replaceFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/graph/Node;)V
         2: .line 543
            return
        end local 3 // org.graalvm.compiler.nodes.memory.WriteNode hub
        end local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 1 // org.graalvm.compiler.nodes.extended.StoreHubNode storeHub
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1  storeHub  Lorg/graalvm/compiler/nodes/extended/StoreHubNode;
            0    3     2     graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            1    3     3       hub  Lorg/graalvm/compiler/nodes/memory/WriteNode;
    MethodParameters:
          Name  Flags
      storeHub  
      graph     

  public org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType fieldInitializationBarrier(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.JavaKind entryKind
         0: .line 547
            aload 1 /* entryKind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 1
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useDeferredInitBarriers:Z
            ifne 1
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.IMPRECISE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType
         2: areturn
        end local 1 // jdk.vm.ci.meta.JavaKind entryKind
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1  entryKind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
           Name  Flags
      entryKind  

  public org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType arrayInitializationBarrier(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.JavaKind entryKind
         0: .line 552
            aload 1 /* entryKind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 1
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useDeferredInitBarriers:Z
            ifne 1
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.PRECISE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            goto 2
      StackMap locals:
      StackMap stack:
         1: getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType
         2: areturn
        end local 1 // jdk.vm.ci.meta.JavaKind entryKind
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1  entryKind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
           Name  Flags
      entryKind  

  private void lowerOSRStartNode(org.graalvm.compiler.nodes.extended.OSRStartNode);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/OSRStartNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=14, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.OSRStartNode osrStart
         0: .line 556
            aload 1 /* osrStart */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRStartNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 2 /* graph */
        start local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
         1: .line 557
            aload 2 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.FIXED_DEOPTS:Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            if_acmpne 22
         2: .line 558
            aload 2 /* graph */
            new org.graalvm.compiler.nodes.StartNode
            dup
            invokespecial org.graalvm.compiler.nodes.StartNode.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.StartNode
            astore 3 /* newStart */
        start local 3 // org.graalvm.compiler.nodes.StartNode newStart
         3: .line 559
            aload 2 /* graph */
            new org.graalvm.compiler.nodes.ParameterNode
            dup
            iconst_0
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getTarget:()Ljdk/vm/ci/code/TargetDescription;
            getfield jdk.vm.ci.code.TargetDescription.wordJavaKind:Ljdk/vm/ci/meta/JavaKind;
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forKind:(Ljdk/vm/ci/meta/JavaKind;)Lorg/graalvm/compiler/core/common/type/Stamp;
            invokestatic org.graalvm.compiler.core.common.type.StampPair.createSingle:(Lorg/graalvm/compiler/core/common/type/Stamp;)Lorg/graalvm/compiler/core/common/type/StampPair;
            invokespecial org.graalvm.compiler.nodes.ParameterNode.<init>:(ILorg/graalvm/compiler/core/common/type/StampPair;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addWithoutUnique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ParameterNode
            astore 4 /* buffer */
        start local 4 // org.graalvm.compiler.nodes.ParameterNode buffer
         4: .line 560
            aload 2 /* graph */
            new org.graalvm.compiler.nodes.extended.ForeignCallNode
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.foreignCalls:Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
            getstatic org.graalvm.compiler.hotspot.meta.HotSpotForeignCallsProviderImpl.OSR_MIGRATION_END:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
            iconst_1
            anewarray org.graalvm.compiler.nodes.ValueNode
            dup
            iconst_0
            aload 4 /* buffer */
            aastore
            invokespecial org.graalvm.compiler.nodes.extended.ForeignCallNode.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;[Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.extended.ForeignCallNode
            astore 5 /* migrationEnd */
        start local 5 // org.graalvm.compiler.nodes.extended.ForeignCallNode migrationEnd
         5: .line 561
            aload 5 /* migrationEnd */
            aload 1 /* osrStart */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRStartNode.stateAfter:()Lorg/graalvm/compiler/nodes/FrameState;
            invokevirtual org.graalvm.compiler.nodes.extended.ForeignCallNode.setStateAfter:(Lorg/graalvm/compiler/nodes/FrameState;)V
         6: .line 563
            aload 3 /* newStart */
            aload 5 /* migrationEnd */
            invokevirtual org.graalvm.compiler.nodes.StartNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
         7: .line 564
            aload 1 /* osrStart */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRStartNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 6 /* next */
        start local 6 // org.graalvm.compiler.nodes.FixedNode next
         8: .line 565
            aload 1 /* osrStart */
            aconst_null
            invokevirtual org.graalvm.compiler.nodes.extended.OSRStartNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
         9: .line 566
            aload 5 /* migrationEnd */
            aload 6 /* next */
            invokevirtual org.graalvm.compiler.nodes.extended.ForeignCallNode.setNext:(Lorg/graalvm/compiler/nodes/FixedNode;)V
        10: .line 567
            aload 2 /* graph */
            aload 3 /* newStart */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.setStart:(Lorg/graalvm/compiler/nodes/StartNode;)V
        11: .line 570
            aload 2 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getMaxLocals:()I
            iconst_1
            isub
            bipush 8
            imul
            istore 7 /* localsOffset */
        start local 7 // int localsOffset
        12: .line 571
            aload 2 /* graph */
            getstatic org.graalvm.compiler.nodes.extended.OSRLocalNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
            astore 9
            goto 20
      StackMap locals: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider org.graalvm.compiler.nodes.extended.OSRStartNode org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.StartNode org.graalvm.compiler.nodes.ParameterNode org.graalvm.compiler.nodes.extended.ForeignCallNode org.graalvm.compiler.nodes.FixedNode int top java.util.Iterator
      StackMap stack:
        13: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.nodes.extended.OSRLocalNode
            astore 8 /* osrLocal */
        start local 8 // org.graalvm.compiler.nodes.extended.OSRLocalNode osrLocal
        14: .line 572
            aload 8 /* osrLocal */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRLocalNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.getSlotCount:()I
            istore 10 /* size */
        start local 10 // int size
        15: .line 573
            iload 7 /* localsOffset */
            aload 8 /* osrLocal */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRLocalNode.index:()I
            iload 10 /* size */
            iadd
            iconst_1
            isub
            bipush 8
            imul
            isub
            istore 11 /* offset */
        start local 11 // int offset
        16: .line 574
            aload 0 /* this */
            aload 2 /* graph */
            aload 4 /* buffer */
            iload 11 /* offset */
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 12 /* address */
        start local 12 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        17: .line 575
            aload 2 /* graph */
            new org.graalvm.compiler.nodes.memory.ReadNode
            dup
            aload 12 /* address */
            invokestatic org.graalvm.compiler.core.common.LocationIdentity.any:()Lorg/graalvm/compiler/core/common/LocationIdentity;
            aload 8 /* osrLocal */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRLocalNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.ReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.ReadNode
            astore 13 /* load */
        start local 13 // org.graalvm.compiler.nodes.memory.ReadNode load
        18: .line 576
            aload 8 /* osrLocal */
            aload 13 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRLocalNode.replaceAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        19: .line 577
            aload 2 /* graph */
            aload 5 /* migrationEnd */
            aload 13 /* load */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.addBeforeFixed:(Lorg/graalvm/compiler/nodes/FixedNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
        end local 13 // org.graalvm.compiler.nodes.memory.ReadNode load
        end local 12 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 11 // int offset
        end local 10 // int size
        end local 8 // org.graalvm.compiler.nodes.extended.OSRLocalNode osrLocal
        20: .line 571
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        21: .line 579
            aload 1 /* osrStart */
            aload 3 /* newStart */
            invokevirtual org.graalvm.compiler.nodes.extended.OSRStartNode.replaceAtUsagesAndDelete:(Lorg/graalvm/compiler/graph/Node;)V
        end local 7 // int localsOffset
        end local 6 // org.graalvm.compiler.nodes.FixedNode next
        end local 5 // org.graalvm.compiler.nodes.extended.ForeignCallNode migrationEnd
        end local 4 // org.graalvm.compiler.nodes.ParameterNode buffer
        end local 3 // org.graalvm.compiler.nodes.StartNode newStart
        22: .line 581
      StackMap locals: org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider org.graalvm.compiler.nodes.extended.OSRStartNode org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack:
            return
        end local 2 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 1 // org.graalvm.compiler.nodes.extended.OSRStartNode osrStart
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0          this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0   23     1      osrStart  Lorg/graalvm/compiler/nodes/extended/OSRStartNode;
            1   23     2         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            3   22     3      newStart  Lorg/graalvm/compiler/nodes/StartNode;
            4   22     4        buffer  Lorg/graalvm/compiler/nodes/ParameterNode;
            5   22     5  migrationEnd  Lorg/graalvm/compiler/nodes/extended/ForeignCallNode;
            8   22     6          next  Lorg/graalvm/compiler/nodes/FixedNode;
           12   22     7  localsOffset  I
           14   20     8      osrLocal  Lorg/graalvm/compiler/nodes/extended/OSRLocalNode;
           15   20    10          size  I
           16   20    11        offset  I
           17   20    12       address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
           18   20    13          load  Lorg/graalvm/compiler/nodes/memory/ReadNode;
    MethodParameters:
          Name  Flags
      osrStart  

  private boolean throwCachedException(org.graalvm.compiler.nodes.extended.BytecodeExceptionNode);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.BytecodeExceptionNode node
         0: .line 604
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getExceptionClass:()Ljava/lang/Class;
            ldc Ljava/lang/NullPointerException;
            if_acmpne 3
         1: .line 605
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$Exceptions.cachedNullPointerException:Ljava/lang/NullPointerException;
            astore 2 /* exception */
        start local 2 // java.lang.Throwable exception
         2: .line 606
            goto 7
        end local 2 // java.lang.Throwable exception
      StackMap locals:
      StackMap stack:
         3: aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getExceptionClass:()Ljava/lang/Class;
            ldc Ljava/lang/ArrayIndexOutOfBoundsException;
            if_acmpne 6
         4: .line 607
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$Exceptions.cachedArrayIndexOutOfBoundsException:Ljava/lang/ArrayIndexOutOfBoundsException;
            astore 2 /* exception */
        start local 2 // java.lang.Throwable exception
         5: .line 608
            goto 7
        end local 2 // java.lang.Throwable exception
         6: .line 609
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        start local 2 // java.lang.Throwable exception
         7: .line 612
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
         8: .line 613
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.constantReflection:Ljdk/vm/ci/hotspot/HotSpotConstantReflectionProvider;
            aload 2 /* exception */
            invokevirtual jdk.vm.ci.hotspot.HotSpotConstantReflectionProvider.forObject:(Ljava/lang/Object;)Ljdk/vm/ci/meta/JavaConstant;
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 3 /* graph */
            invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
            astore 4 /* exceptionNode */
        start local 4 // org.graalvm.compiler.nodes.calc.FloatingNode exceptionNode
         9: .line 614
            aload 3 /* graph */
            aload 1 /* node */
            aload 4 /* exceptionNode */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.replaceFixedWithFloating:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/nodes/calc/FloatingNode;)V
        10: .line 615
            iconst_1
            ireturn
        end local 4 // org.graalvm.compiler.nodes.calc.FloatingNode exceptionNode
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // java.lang.Throwable exception
        end local 1 // org.graalvm.compiler.nodes.extended.BytecodeExceptionNode node
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0   11     1           node  Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode;
            2    3     2      exception  Ljava/lang/Throwable;
            5    6     2      exception  Ljava/lang/Throwable;
            7   11     2      exception  Ljava/lang/Throwable;
            8   11     3          graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            9   11     4  exceptionNode  Lorg/graalvm/compiler/nodes/calc/FloatingNode;
    MethodParameters:
      Name  Flags
      node  

  private void lowerBytecodeExceptionNode(org.graalvm.compiler.nodes.extended.BytecodeExceptionNode);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.BytecodeExceptionNode node
         0: .line 619
            getstatic org.graalvm.compiler.core.common.GraalOptions.OmitHotExceptionStacktrace:Lorg/graalvm/compiler/options/OptionValue;
            invokevirtual org.graalvm.compiler.options.OptionValue.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 3
         1: .line 620
            aload 0 /* this */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.throwCachedException:(Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode;)Z
            ifeq 3
         2: .line 621
            return
         3: .line 626
      StackMap locals:
      StackMap stack:
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getExceptionClass:()Ljava/lang/Class;
            ldc Ljava/lang/NullPointerException;
            if_acmpne 6
         4: .line 627
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$RuntimeCalls.CREATE_NULL_POINTER_EXCEPTION:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
            astore 2 /* descriptor */
        start local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
         5: .line 628
            goto 16
        end local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
      StackMap locals:
      StackMap stack:
         6: aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getExceptionClass:()Ljava/lang/Class;
            ldc Ljava/lang/ArrayIndexOutOfBoundsException;
            if_acmpne 9
         7: .line 629
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$RuntimeCalls.CREATE_OUT_OF_BOUNDS_EXCEPTION:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
            astore 2 /* descriptor */
        start local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
         8: .line 630
            goto 16
        end local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
      StackMap locals:
      StackMap stack:
         9: aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getExceptionClass:()Ljava/lang/Class;
            ldc Ljava/lang/ArrayStoreException;
            if_acmpne 12
        10: .line 631
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$RuntimeCalls.CREATE_ARRAY_STORE_EXCEPTION:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
            astore 2 /* descriptor */
        start local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
        11: .line 632
            goto 16
        end local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
      StackMap locals:
      StackMap stack:
        12: aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getExceptionClass:()Ljava/lang/Class;
            ldc Ljava/lang/ClassCastException;
            if_acmpne 15
        13: .line 633
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$RuntimeCalls.CREATE_CLASS_CAST_EXCEPTION:Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
            astore 2 /* descriptor */
        start local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
        14: .line 634
            goto 16
        end local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
        15: .line 635
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.debug.GraalError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        start local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
        16: .line 638
      StackMap locals: org.graalvm.compiler.core.common.spi.ForeignCallDescriptor
      StackMap stack:
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 3 /* graph */
        start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        17: .line 639
            aload 3 /* graph */
            new org.graalvm.compiler.nodes.extended.ForeignCallNode
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.foreignCalls:Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;
            aload 2 /* descriptor */
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.stamp:()Lorg/graalvm/compiler/core/common/type/Stamp;
            aload 1 /* node */
            invokevirtual org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.getArguments:()Lorg/graalvm/compiler/graph/NodeInputList;
            invokespecial org.graalvm.compiler.nodes.extended.ForeignCallNode.<init>:(Lorg/graalvm/compiler/core/common/spi/ForeignCallsProvider;Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;Lorg/graalvm/compiler/core/common/type/Stamp;Ljava/util/List;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.extended.ForeignCallNode
            astore 4 /* foreignCallNode */
        start local 4 // org.graalvm.compiler.nodes.extended.ForeignCallNode foreignCallNode
        18: .line 640
            aload 3 /* graph */
            aload 1 /* node */
            aload 4 /* foreignCallNode */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.replaceFixedWithFixed:(Lorg/graalvm/compiler/nodes/FixedWithNextNode;Lorg/graalvm/compiler/nodes/FixedWithNextNode;)V
        19: .line 641
            return
        end local 4 // org.graalvm.compiler.nodes.extended.ForeignCallNode foreignCallNode
        end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 2 // org.graalvm.compiler.core.common.spi.ForeignCallDescriptor descriptor
        end local 1 // org.graalvm.compiler.nodes.extended.BytecodeExceptionNode node
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   20     0             this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0   20     1             node  Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode;
            5    6     2       descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
            8    9     2       descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
           11   12     2       descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
           14   15     2       descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
           16   20     2       descriptor  Lorg/graalvm/compiler/core/common/spi/ForeignCallDescriptor;
           17   20     3            graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
           18   20     4  foreignCallNode  Lorg/graalvm/compiler/nodes/extended/ForeignCallNode;
    MethodParameters:
      Name  Flags
      node  

  private boolean addReadBarrier(org.graalvm.compiler.nodes.extended.UnsafeLoadNode);
    descriptor: (Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.extended.UnsafeLoadNode load
         0: .line 644
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useG1GC:Z
            ifeq 5
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.UnsafeLoadNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getGuardsStage:()Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            getstatic org.graalvm.compiler.nodes.StructuredGraph$GuardsStage.FIXED_DEOPTS:Lorg/graalvm/compiler/nodes/StructuredGraph$GuardsStage;
            if_acmpne 5
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.UnsafeLoadNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokevirtual org.graalvm.compiler.nodes.ValueNode.getStackKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 5
         1: .line 645
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.UnsafeLoadNode.accessKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 5
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.UnsafeLoadNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.type.StampTool.isPointerAlwaysNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Z
            ifne 5
         2: .line 646
            aload 1 /* load */
            invokevirtual org.graalvm.compiler.nodes.extended.UnsafeLoadNode.object:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic org.graalvm.compiler.nodes.type.StampTool.typeOrNull:(Lorg/graalvm/compiler/nodes/ValueNode;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 2 /* type */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaType type
         3: .line 647
            aload 2 /* type */
            ifnull 5
            aload 2 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isArray:()Z
            ifne 5
         4: .line 648
            iconst_1
            ireturn
        end local 2 // jdk.vm.ci.meta.ResolvedJavaType type
         5: .line 651
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.graalvm.compiler.nodes.extended.UnsafeLoadNode load
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    6     1  load  Lorg/graalvm/compiler/nodes/extended/UnsafeLoadNode;
            3    5     2  type  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
      Name  Flags
      load  

  private org.graalvm.compiler.nodes.memory.ReadNode createReadVirtualMethod(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.ValueNode, jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod, jdk.vm.ci.meta.ResolvedJavaType);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaType;)Lorg/graalvm/compiler/nodes/memory/ReadNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.nodes.ValueNode hub
        start local 3 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
        start local 4 // jdk.vm.ci.meta.ResolvedJavaType receiverType
         0: .line 655
            aload 0 /* this */
            aload 1 /* graph */
            aload 2 /* hub */
            aload 3 /* method */
            aload 4 /* receiverType */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod.vtableEntryOffset:(Ljdk/vm/ci/meta/ResolvedJavaType;)I
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createReadVirtualMethod:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;I)Lorg/graalvm/compiler/nodes/memory/ReadNode;
            areturn
        end local 4 // jdk.vm.ci.meta.ResolvedJavaType receiverType
        end local 3 // jdk.vm.ci.hotspot.HotSpotResolvedJavaMethod method
        end local 2 // org.graalvm.compiler.nodes.ValueNode hub
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    1     1         graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0    1     2           hub  Lorg/graalvm/compiler/nodes/ValueNode;
            0    1     3        method  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaMethod;
            0    1     4  receiverType  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
              Name  Flags
      graph         
      hub           
      method        
      receiverType  

  private org.graalvm.compiler.nodes.memory.ReadNode createReadVirtualMethod(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.ValueNode, int);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;I)Lorg/graalvm/compiler/nodes/memory/ReadNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.nodes.ValueNode hub
        start local 3 // int vtableEntryOffset
         0: .line 659
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 1
            iload 3 /* vtableEntryOffset */
            ifgt 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 662
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.hotspot.nodes.type.MethodPointerStamp.method:()Lorg/graalvm/compiler/hotspot/nodes/type/MethodPointerStamp;
            astore 4 /* methodStamp */
        start local 4 // org.graalvm.compiler.core.common.type.Stamp methodStamp
         2: .line 663
            aload 0 /* this */
            aload 1 /* graph */
            aload 2 /* hub */
            iload 3 /* vtableEntryOffset */
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 5 /* address */
        start local 5 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         3: .line 664
            aload 1 /* graph */
            new org.graalvm.compiler.nodes.memory.ReadNode
            dup
            aload 5 /* address */
            invokestatic org.graalvm.compiler.core.common.LocationIdentity.any:()Lorg/graalvm/compiler/core/common/LocationIdentity;
            aload 4 /* methodStamp */
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.ReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.ReadNode
            astore 6 /* metaspaceMethod */
        start local 6 // org.graalvm.compiler.nodes.memory.ReadNode metaspaceMethod
         4: .line 665
            aload 6 /* metaspaceMethod */
            areturn
        end local 6 // org.graalvm.compiler.nodes.memory.ReadNode metaspaceMethod
        end local 5 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 4 // org.graalvm.compiler.core.common.type.Stamp methodStamp
        end local 3 // int vtableEntryOffset
        end local 2 // org.graalvm.compiler.nodes.ValueNode hub
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    5     1              graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0    5     2                hub  Lorg/graalvm/compiler/nodes/ValueNode;
            0    5     3  vtableEntryOffset  I
            2    5     4        methodStamp  Lorg/graalvm/compiler/core/common/type/Stamp;
            3    5     5            address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            4    5     6    metaspaceMethod  Lorg/graalvm/compiler/nodes/memory/ReadNode;
    MethodParameters:
                   Name  Flags
      graph              
      hub                
      vtableEntryOffset  

  protected org.graalvm.compiler.nodes.ValueNode createReadHub(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.spi.LoweringTool);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/spi/LoweringTool;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=8, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.nodes.ValueNode object
        start local 3 // org.graalvm.compiler.nodes.spi.LoweringTool tool
         0: .line 670
            aload 3 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getLoweringStage:()Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;
            getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.LOW_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
            if_acmpeq 2
         1: .line 671
            aload 1 /* graph */
            new org.graalvm.compiler.nodes.extended.LoadHubNode
            dup
            aload 3 /* tool */
            invokeinterface org.graalvm.compiler.nodes.spi.LoweringTool.getStampProvider:()Lorg/graalvm/compiler/nodes/spi/StampProvider;
            aload 2 /* object */
            invokespecial org.graalvm.compiler.nodes.extended.LoadHubNode.<init>:(Lorg/graalvm/compiler/nodes/spi/StampProvider;Lorg/graalvm/compiler/nodes/ValueNode;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.ValueNode
            areturn
         2: .line 673
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 3
            aload 2 /* object */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 3
            aload 2 /* object */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isNullConstant:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 675
      StackMap locals:
      StackMap stack:
            invokestatic org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.klassNonNull:()Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            astore 4 /* hubStamp */
        start local 4 // org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp hubStamp
         4: .line 676
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedClassPointers:Z
            ifeq 6
         5: .line 677
            aload 4 /* hubStamp */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getKlassEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            invokevirtual org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp.compressed:(Lorg/graalvm/compiler/hotspot/CompressEncoding;)Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            astore 4 /* hubStamp */
         6: .line 680
      StackMap locals: org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp
      StackMap stack:
            aload 0 /* this */
            aload 1 /* graph */
            aload 2 /* object */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.hubOffset:I
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 5 /* address */
        start local 5 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         7: .line 681
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedClassPointers:Z
            ifeq 8
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.COMPRESSED_HUB_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            goto 9
      StackMap locals: org.graalvm.compiler.nodes.memory.address.AddressNode
      StackMap stack:
         8: getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.HUB_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
      StackMap locals:
      StackMap stack: org.graalvm.compiler.core.common.LocationIdentity
         9: astore 6 /* hubLocation */
        start local 6 // org.graalvm.compiler.core.common.LocationIdentity hubLocation
        10: .line 682
            aload 1 /* graph */
            new org.graalvm.compiler.nodes.memory.FloatingReadNode
            dup
            aload 5 /* address */
            aload 6 /* hubLocation */
            aconst_null
            aload 4 /* hubStamp */
            aconst_null
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.FloatingReadNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/nodes/memory/MemoryNode;Lorg/graalvm/compiler/core/common/type/Stamp;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.unique:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
            astore 7 /* memoryRead */
        start local 7 // org.graalvm.compiler.nodes.memory.FloatingReadNode memoryRead
        11: .line 683
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedClassPointers:Z
            ifeq 13
        12: .line 684
            aload 7 /* memoryRead */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getKlassEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            invokestatic org.graalvm.compiler.hotspot.nodes.CompressionNode.uncompress:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/hotspot/CompressEncoding;)Lorg/graalvm/compiler/hotspot/nodes/CompressionNode;
            areturn
        13: .line 686
      StackMap locals: org.graalvm.compiler.core.common.LocationIdentity org.graalvm.compiler.nodes.memory.FloatingReadNode
      StackMap stack:
            aload 7 /* memoryRead */
            areturn
        end local 7 // org.graalvm.compiler.nodes.memory.FloatingReadNode memoryRead
        end local 6 // org.graalvm.compiler.core.common.LocationIdentity hubLocation
        end local 5 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 4 // org.graalvm.compiler.hotspot.nodes.type.KlassPointerStamp hubStamp
        end local 3 // org.graalvm.compiler.nodes.spi.LoweringTool tool
        end local 2 // org.graalvm.compiler.nodes.ValueNode object
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0   14     1        graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0   14     2       object  Lorg/graalvm/compiler/nodes/ValueNode;
            0   14     3         tool  Lorg/graalvm/compiler/nodes/spi/LoweringTool;
            4   14     4     hubStamp  Lorg/graalvm/compiler/hotspot/nodes/type/KlassPointerStamp;
            7   14     5      address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
           10   14     6  hubLocation  Lorg/graalvm/compiler/core/common/LocationIdentity;
           11   14     7   memoryRead  Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
    MethodParameters:
        Name  Flags
      graph   
      object  
      tool    

  private org.graalvm.compiler.nodes.memory.WriteNode createWriteHub(org.graalvm.compiler.nodes.StructuredGraph, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/memory/WriteNode;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        start local 2 // org.graalvm.compiler.nodes.ValueNode object
        start local 3 // org.graalvm.compiler.nodes.ValueNode value
         0: .line 691
            getstatic org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.$assertionsDisabled:Z
            ifne 1
            aload 2 /* object */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 1
            aload 2 /* object */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            invokeinterface jdk.vm.ci.meta.Constant.isDefaultForKind:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 693
      StackMap locals:
      StackMap stack:
            aload 3 /* value */
            astore 4 /* writeValue */
        start local 4 // org.graalvm.compiler.nodes.ValueNode writeValue
         2: .line 694
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedClassPointers:Z
            ifeq 4
         3: .line 695
            aload 3 /* value */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.getKlassEncoding:()Lorg/graalvm/compiler/hotspot/CompressEncoding;
            invokestatic org.graalvm.compiler.hotspot.nodes.CompressionNode.compress:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/hotspot/CompressEncoding;)Lorg/graalvm/compiler/hotspot/nodes/CompressionNode;
            astore 4 /* writeValue */
         4: .line 698
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 0 /* this */
            aload 1 /* graph */
            aload 2 /* object */
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.hubOffset:I
            i2l
            invokevirtual org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.createOffsetAddress:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/ValueNode;J)Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
            astore 5 /* address */
        start local 5 // org.graalvm.compiler.nodes.memory.address.AddressNode address
         5: .line 699
            aload 1 /* graph */
            new org.graalvm.compiler.nodes.memory.WriteNode
            dup
            aload 5 /* address */
            getstatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.HUB_WRITE_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            aload 4 /* writeValue */
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            invokespecial org.graalvm.compiler.nodes.memory.WriteNode.<init>:(Lorg/graalvm/compiler/nodes/memory/address/AddressNode;Lorg/graalvm/compiler/core/common/LocationIdentity;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;)V
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.add:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/graph/Node;
            checkcast org.graalvm.compiler.nodes.memory.WriteNode
            areturn
        end local 5 // org.graalvm.compiler.nodes.memory.address.AddressNode address
        end local 4 // org.graalvm.compiler.nodes.ValueNode writeValue
        end local 3 // org.graalvm.compiler.nodes.ValueNode value
        end local 2 // org.graalvm.compiler.nodes.ValueNode object
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    6     1       graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            0    6     2      object  Lorg/graalvm/compiler/nodes/ValueNode;
            0    6     3       value  Lorg/graalvm/compiler/nodes/ValueNode;
            2    6     4  writeValue  Lorg/graalvm/compiler/nodes/ValueNode;
            5    6     5     address  Lorg/graalvm/compiler/nodes/memory/address/AddressNode;
    MethodParameters:
        Name  Flags
      graph   
      object  
      value   

  protected org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType fieldLoadBarrierType(jdk.vm.ci.meta.ResolvedJavaField);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaField;)Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaField f
         0: .line 704
            aload 1 /* f */
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaField
            astore 2 /* loadField */
        start local 2 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField loadField
         1: .line 705
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.NONE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            astore 3 /* barrierType */
        start local 3 // org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType barrierType
         2: .line 706
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useG1GC:Z
            ifeq 5
            aload 2 /* loadField */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 5
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
            ldc Ljava/lang/ref/Reference;
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            aload 2 /* loadField */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 5
         3: .line 707
            aload 2 /* loadField */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.getName:()Ljava/lang/String;
            ldc "referent"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 708
            getstatic org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType.PRECISE:Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
            astore 3 /* barrierType */
         5: .line 710
      StackMap locals: jdk.vm.ci.hotspot.HotSpotResolvedJavaField org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType
      StackMap stack:
            aload 3 /* barrierType */
            areturn
        end local 3 // org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType barrierType
        end local 2 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField loadField
        end local 1 // jdk.vm.ci.meta.ResolvedJavaField f
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0         this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    6     1            f  Ljdk/vm/ci/meta/ResolvedJavaField;
            1    6     2    loadField  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaField;
            2    6     3  barrierType  Lorg/graalvm/compiler/nodes/memory/HeapAccess$BarrierType;
    MethodParameters:
      Name  Flags
      f     

  public int fieldOffset(jdk.vm.ci.meta.ResolvedJavaField);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaField;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaField f
         0: .line 715
            aload 1 /* f */
            checkcast jdk.vm.ci.hotspot.HotSpotResolvedJavaField
            astore 2 /* field */
        start local 2 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField field
         1: .line 716
            aload 2 /* field */
            invokeinterface jdk.vm.ci.hotspot.HotSpotResolvedJavaField.offset:()I
            ireturn
        end local 2 // jdk.vm.ci.hotspot.HotSpotResolvedJavaField field
        end local 1 // jdk.vm.ci.meta.ResolvedJavaField f
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    2     1      f  Ljdk/vm/ci/meta/ResolvedJavaField;
            1    2     2  field  Ljdk/vm/ci/hotspot/HotSpotResolvedJavaField;
    MethodParameters:
      Name  Flags
      f     

  public int arrayScalingFactor(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.JavaKind kind
         0: .line 721
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            getfield org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.useCompressedOops:Z
            ifeq 2
            aload 1 /* kind */
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 2
         1: .line 722
            aload 0 /* this */
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.arrayScalingFactor:(Ljdk/vm/ci/meta/JavaKind;)I
            ireturn
         2: .line 724
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* kind */
            invokespecial org.graalvm.compiler.replacements.DefaultJavaLoweringProvider.arrayScalingFactor:(Ljdk/vm/ci/meta/JavaKind;)I
            ireturn
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    3     1  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  public int arrayBaseOffset(jdk.vm.ci.meta.JavaKind);
    descriptor: (Ljdk/vm/ci/meta/JavaKind;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
        start local 1 // jdk.vm.ci.meta.JavaKind kind
         0: .line 730
            aload 1 /* kind */
            invokestatic jdk.vm.ci.hotspot.HotSpotJVMCIRuntimeProvider.getArrayBaseOffset:(Ljdk/vm/ci/meta/JavaKind;)I
            ireturn
        end local 1 // jdk.vm.ci.meta.JavaKind kind
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
            0    1     1  kind  Ljdk/vm/ci/meta/JavaKind;
    MethodParameters:
      Name  Flags
      kind  

  public int arrayLengthOffset();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
         0: .line 735
            aload 0 /* this */
            getfield org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider.runtime:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
            invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
            invokevirtual org.graalvm.compiler.hotspot.GraalHotSpotVMConfig.arrayOopDescLengthOffset:()I
            ireturn
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;

  public org.graalvm.compiler.core.common.LocationIdentity initLocationIdentity();
    descriptor: ()Lorg/graalvm/compiler/core/common/LocationIdentity;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
         0: .line 740
            getstatic org.graalvm.compiler.hotspot.replacements.NewObjectSnippets.INIT_LOCATION:Lorg/graalvm/compiler/core/common/LocationIdentity;
            areturn
        end local 0 // org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/meta/DefaultHotSpotLoweringProvider;
}
SourceFile: "DefaultHotSpotLoweringProvider.java"
NestMembers:
  org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$Exceptions  org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$RuntimeCalls
InnerClasses:
  public abstract Type = jdk.vm.ci.code.CallingConvention$Type of jdk.vm.ci.code.CallingConvention
  public abstract ValueNumberable = org.graalvm.compiler.graph.Node$ValueNumberable of org.graalvm.compiler.graph.Node
  final Exceptions = org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$Exceptions of org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider
  public final RuntimeCalls = org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider$RuntimeCalls of org.graalvm.compiler.hotspot.meta.DefaultHotSpotLoweringProvider
  public final CompressionOp = org.graalvm.compiler.hotspot.nodes.CompressionNode$CompressionOp of org.graalvm.compiler.hotspot.nodes.CompressionNode
  public Templates = org.graalvm.compiler.hotspot.replacements.AssertionSnippets$Templates of org.graalvm.compiler.hotspot.replacements.AssertionSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.HashCodeSnippets$Templates of org.graalvm.compiler.hotspot.replacements.HashCodeSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets$Templates of org.graalvm.compiler.hotspot.replacements.InstanceOfSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.LoadExceptionObjectSnippets$Templates of org.graalvm.compiler.hotspot.replacements.LoadExceptionObjectSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.MonitorSnippets$Templates of org.graalvm.compiler.hotspot.replacements.MonitorSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.NewObjectSnippets$Templates of org.graalvm.compiler.hotspot.replacements.NewObjectSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.StringToBytesSnippets$Templates of org.graalvm.compiler.hotspot.replacements.StringToBytesSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.UnsafeLoadSnippets$Templates of org.graalvm.compiler.hotspot.replacements.UnsafeLoadSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets$Templates of org.graalvm.compiler.hotspot.replacements.WriteBarrierSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets$Templates of org.graalvm.compiler.hotspot.replacements.aot.ResolveConstantSnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets$Templates of org.graalvm.compiler.hotspot.replacements.arraycopy.ArrayCopySnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.arraycopy.UnsafeArrayCopySnippets$Templates of org.graalvm.compiler.hotspot.replacements.arraycopy.UnsafeArrayCopySnippets
  public Templates = org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets$Templates of org.graalvm.compiler.hotspot.replacements.profiling.ProfileSnippets
  public final InvokeKind = org.graalvm.compiler.nodes.CallTargetNode$InvokeKind of org.graalvm.compiler.nodes.CallTargetNode
  public final GuardsStage = org.graalvm.compiler.nodes.StructuredGraph$GuardsStage of org.graalvm.compiler.nodes.StructuredGraph
  public final BarrierType = org.graalvm.compiler.nodes.memory.HeapAccess$BarrierType of org.graalvm.compiler.nodes.memory.HeapAccess
  public abstract LoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$LoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
  public final StandardLoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool