public class com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins
  super_class: java.lang.Object
{
  private static final java.lang.String reflectionClass;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  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=2, locals=0, args_size=0
         0: .line 163
            ldc Lcom/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins;
            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 com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.$assertionsDisabled:Z
         3: .line 167
            getstatic org.graalvm.compiler.serviceprovider.JavaVersionUtil.JAVA_SPEC:I
            bipush 8
            if_icmpgt 6
         4: .line 168
            ldc "sun.reflect.Reflection"
            putstatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.reflectionClass:Ljava/lang/String;
         5: .line 169
            goto 7
         6: .line 170
      StackMap locals:
      StackMap stack:
            ldc "jdk.internal.reflect.Reflection"
            putstatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.reflectionClass:Ljava/lang/String;
         7: .line 172
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins this
         0: .line 163
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins;

  public static void registerInvocationPlugins(com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor, jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.nodes.spi.Replacements, boolean);
    descriptor: (Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;Z)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        start local 1 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 4 // org.graalvm.compiler.nodes.spi.Replacements replacements
        start local 5 // boolean analysis
         0: .line 178
            aload 1 /* metaAccess */
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerSystemPlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
         1: .line 179
            aload 3 /* plugins */
            aload 4 /* replacements */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerReflectionPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;Z)V
         2: .line 180
            aload 1 /* metaAccess */
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerImageInfoPlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
         3: .line 181
            aload 2 /* snippetReflection */
            aload 0 /* annotationSubstitutions */
            aload 3 /* plugins */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerProxyPlugins:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
         4: .line 182
            aload 1 /* metaAccess */
            aload 2 /* snippetReflection */
            aload 3 /* plugins */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerAtomicUpdaterPlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
         5: .line 183
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerObjectPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
         6: .line 184
            aload 1 /* metaAccess */
            aload 3 /* plugins */
            aload 2 /* snippetReflection */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerUnsafePlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
         7: .line 185
            aload 3 /* plugins */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerKnownIntrinsicsPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
         8: .line 186
            aload 2 /* snippetReflection */
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerStackValuePlugins:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
         9: .line 187
            aload 3 /* plugins */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerArraysPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
        10: .line 188
            aload 3 /* plugins */
            aload 2 /* snippetReflection */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerArrayPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
        11: .line 189
            aload 3 /* plugins */
            aload 2 /* snippetReflection */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerClassPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
        12: .line 190
            aload 1 /* metaAccess */
            aload 3 /* plugins */
            iload 5 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerEdgesPlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
        13: .line 191
            aload 3 /* plugins */
            aload 4 /* replacements */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerJFRThrowablePlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
        14: .line 192
            aload 3 /* plugins */
            aload 4 /* replacements */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerJFREventTokenPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
        15: .line 193
            aload 2 /* snippetReflection */
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerVMConfigurationPlugins:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
        16: .line 194
            aload 2 /* snippetReflection */
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerPlatformPlugins:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
        17: .line 195
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerAWTPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
        18: .line 196
            aload 2 /* snippetReflection */
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerSizeOfPlugins:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
        19: .line 197
            aload 3 /* plugins */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerReferenceAccessPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
        20: .line 198
            return
        end local 5 // boolean analysis
        end local 4 // org.graalvm.compiler.nodes.spi.Replacements replacements
        end local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 1 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        end local 0 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   21     0  annotationSubstitutions  Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;
            0   21     1               metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0   21     2        snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0   21     3                  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0   21     4             replacements  Lorg/graalvm/compiler/nodes/spi/Replacements;
            0   21     5                 analysis  Z
    MethodParameters:
                         Name  Flags
      annotationSubstitutions  
      metaAccess               
      snippetReflection        
      plugins                  
      replacements             
      analysis                 

  private static void registerSystemPlugins(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 201
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Ljava/lang/System;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 202
            getstatic com.oracle.svm.core.SubstrateOptions.FoldSecurityManagerGetter:Lcom/oracle/svm/core/option/HostedOptionKey;
            invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 3
         2: .line 203
            aload 2 /* r */
            ldc "getSecurityManager"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$1
            dup
            aload 0 /* metaAccess */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$1.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 213
      StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
      StackMap stack:
            aload 2 /* r */
            ldc "identityHashCode"
            ldc Ljava/lang/Object;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$2
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$2.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         4: .line 220
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0  metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    5     1     plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    5     2           r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
            Name  Flags
      metaAccess  
      plugins     

  private static void registerReflectionPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.nodes.spi.Replacements, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // org.graalvm.compiler.nodes.spi.Replacements replacements
        start local 2 // boolean analysis
         0: .line 223
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            getstatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.reflectionClass:Ljava/lang/String;
            aload 1 /* replacements */
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/String;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
            astore 3 /* r */
        start local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 224
            aload 3 /* r */
            ldc "getCallerClass"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$3
            dup
            iload 2 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$3.<init>:(Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 243
            return
        end local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 2 // boolean analysis
        end local 1 // org.graalvm.compiler.nodes.spi.Replacements replacements
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0       plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    3     1  replacements  Lorg/graalvm/compiler/nodes/spi/Replacements;
            0    3     2      analysis  Z
            1    3     3             r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
              Name  Flags
      plugins       
      replacements  
      analysis      

  private static void registerImageInfoPlugins(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 246
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lorg/graalvm/nativeimage/ImageInfo;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* proxyRegistration */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration proxyRegistration
         1: .line 247
            aload 2 /* proxyRegistration */
            ldc "inImageCode"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$4
            dup
            aload 0 /* metaAccess */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$4.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 255
            aload 2 /* proxyRegistration */
            ldc "inImageBuildtimeCode"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$5
            dup
            aload 0 /* metaAccess */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$5.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 263
            aload 2 /* proxyRegistration */
            ldc "inImageRuntimeCode"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$6
            dup
            aload 0 /* metaAccess */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$6.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         4: .line 271
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration proxyRegistration
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0         metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    5     1            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    5     2  proxyRegistration  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
            Name  Flags
      metaAccess  
      plugins     

  private static void registerProxyPlugins(org.graalvm.compiler.api.replacements.SnippetReflectionProvider, com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, boolean);
    descriptor: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 1 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 3 // boolean analysis
         0: .line 274
            iload 3 /* analysis */
            ifeq 4
         1: .line 275
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 2 /* plugins */
            ldc Ljava/lang/reflect/Proxy;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 4 /* proxyRegistration */
        start local 4 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration proxyRegistration
         2: .line 276
            aload 4 /* proxyRegistration */
            ldc "getProxyClass"
            ldc Ljava/lang/ClassLoader;
            ldc [Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$7
            dup
            aload 0 /* snippetReflection */
            aload 1 /* annotationSubstitutions */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$7.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 284
            aload 4 /* proxyRegistration */
            ldc "newProxyInstance"
            ldc Ljava/lang/ClassLoader;
            ldc [Ljava/lang/Class;
            ldc Ljava/lang/reflect/InvocationHandler;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$8
            dup
            aload 0 /* snippetReflection */
            aload 1 /* annotationSubstitutions */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$8.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register3:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
        end local 4 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration proxyRegistration
         4: .line 292
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean analysis
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 1 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        end local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    5     0        snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    5     1  annotationSubstitutions  Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;
            0    5     2                  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    5     3                 analysis  Z
            2    4     4        proxyRegistration  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                         Name  Flags
      snippetReflection        
      annotationSubstitutions  
      plugins                  
      analysis                 

  private static void interceptProxyInterfaces(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        start local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 3 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        start local 4 // org.graalvm.compiler.nodes.ValueNode interfacesNode
         0: .line 300
            aload 2 /* snippetReflection */
            aload 3 /* annotationSubstitutions */
            aload 4 /* interfacesNode */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.extractClassArray:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/nodes/ValueNode;)[Ljava/lang/Class;
            astore 5 /* interfaces */
        start local 5 // java.lang.Class[] interfaces
         1: .line 301
            aload 5 /* interfaces */
            ifnull 10
         2: .line 303
            ldc Lcom/oracle/svm/core/jdk/proxy/DynamicProxyRegistry;
            invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.oracle.svm.core.jdk.proxy.DynamicProxyRegistry
            aload 5 /* interfaces */
            invokeinterface com.oracle.svm.core.jdk.proxy.DynamicProxyRegistry.addProxyClass:([Ljava/lang/Class;)V
         3: .line 304
            ldc Lcom/oracle/svm/hosted/FallbackFeature;
            invokestatic org.graalvm.nativeimage.ImageSingletons.contains:(Ljava/lang/Class;)Z
            ifeq 5
         4: .line 305
            ldc Lcom/oracle/svm/hosted/FallbackFeature;
            invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
            checkcast com.oracle.svm.hosted.FallbackFeature
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bci:()I
            invokevirtual com.oracle.svm.hosted.FallbackFeature.addAutoProxyInvoke:(Ljdk/vm/ci/meta/ResolvedJavaMethod;I)V
         5: .line 307
      StackMap locals: java.lang.Class[]
      StackMap stack:
            getstatic com.oracle.svm.hosted.snippets.Options.DynamicProxyTracing:Lcom/oracle/svm/core/option/HostedOptionKey;
            invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 14
         6: .line 308
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Successfully determined constant value for interfaces argument of call to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* targetMethod */
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 309
            ldc " reached from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ". "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Registered proxy class for "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* interfaces */
            invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 308
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         9: .line 311
            goto 14
        10: .line 312
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.svm.hosted.snippets.Options.DynamicProxyTracing:Lcom/oracle/svm/core/option/HostedOptionKey;
            invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 14
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.parsingIntrinsic:()Z
            ifne 14
        11: .line 313
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Could not determine constant value for interfaces argument of call to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* targetMethod */
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        12: .line 314
            ldc " reached from "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: .line 313
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        14: .line 317
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.Class[] interfaces
        end local 4 // org.graalvm.compiler.nodes.ValueNode interfacesNode
        end local 3 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        end local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   15     0                        b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
            0   15     1             targetMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0   15     2        snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0   15     3  annotationSubstitutions  Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;
            0   15     4           interfacesNode  Lorg/graalvm/compiler/nodes/ValueNode;
            1   15     5               interfaces  [Ljava/lang/Class;
    MethodParameters:
                         Name  Flags
      b                        
      targetMethod             
      snippetReflection        
      annotationSubstitutions  
      interfacesNode           

  static java.lang.Class<?>[] extractClassArray(org.graalvm.compiler.api.replacements.SnippetReflectionProvider, com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/nodes/ValueNode;)[Ljava/lang/Class;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 1 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        start local 2 // org.graalvm.compiler.nodes.ValueNode arrayNode
         0: .line 324
            aload 1 /* annotationSubstitutions */
            aload 0 /* snippetReflection */
            aload 2 /* arrayNode */
            iconst_0
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.extractClassArray:(Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/ValueNode;Z)[Ljava/lang/Class;
            areturn
        end local 2 // org.graalvm.compiler.nodes.ValueNode arrayNode
        end local 1 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        end local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    1     0        snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    1     1  annotationSubstitutions  Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;
            0    1     2                arrayNode  Lorg/graalvm/compiler/nodes/ValueNode;
    Signature: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/nodes/ValueNode;)[Ljava/lang/Class<*>;
    MethodParameters:
                         Name  Flags
      snippetReflection        
      annotationSubstitutions  
      arrayNode                

  static java.lang.Class<?>[] extractClassArray(com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.ValueNode, boolean);
    descriptor: (Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/ValueNode;Z)[Ljava/lang/Class;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=12, args_size=4
        start local 0 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 2 // org.graalvm.compiler.nodes.ValueNode arrayNode
        start local 3 // boolean exact
         0: .line 340
            aload 2 /* arrayNode */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.getDeoptProxyOriginalValue:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            astore 4 /* originalArrayNode */
        start local 4 // org.graalvm.compiler.nodes.ValueNode originalArrayNode
         1: .line 341
            aload 4 /* originalArrayNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 7
            iload 3 /* exact */
            ifne 7
         2: .line 346
            aload 1 /* snippetReflection */
            ldc [Ljava/lang/Class;
            aload 4 /* originalArrayNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            checkcast java.lang.Class[]
            astore 5 /* classes */
        start local 5 // java.lang.Class[] classes
         3: .line 352
            aload 5 /* classes */
            ifnonnull 4
            aconst_null
            goto 6
      StackMap locals: org.graalvm.compiler.nodes.ValueNode java.lang.Class[]
      StackMap stack:
         4: aload 5 /* classes */
            invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/util/Objects.nonNull(Ljava/lang/Object;)Z (6)
                  (Ljava/lang/Class;)Z
            invokeinterface java.util.stream.Stream.allMatch:(Ljava/util/function/Predicate;)Z
            ifeq 5
            aload 5 /* classes */
            goto 6
      StackMap locals:
      StackMap stack:
         5: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Class[]
         6: areturn
        end local 5 // java.lang.Class[] classes
         7: .line 354
      StackMap locals:
      StackMap stack:
            aload 4 /* originalArrayNode */
            instanceof org.graalvm.compiler.nodes.java.NewArrayNode
            ifeq 31
         8: .line 360
            aload 4 /* originalArrayNode */
            checkcast org.graalvm.compiler.nodes.java.NewArrayNode
            astore 5 /* newArray */
        start local 5 // org.graalvm.compiler.nodes.java.NewArrayNode newArray
         9: .line 361
            aload 5 /* newArray */
            invokevirtual org.graalvm.compiler.nodes.java.NewArrayNode.length:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 6 /* newArrayLengthNode */
        start local 6 // org.graalvm.compiler.nodes.ValueNode newArrayLengthNode
        10: .line 362
            aload 6 /* newArrayLengthNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isJavaConstant:()Z
            ifne 12
        11: .line 367
            aconst_null
            areturn
        12: .line 369
      StackMap locals: org.graalvm.compiler.nodes.java.NewArrayNode org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            getstatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.$assertionsDisabled:Z
            ifne 13
            aload 6 /* newArrayLengthNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Int:Ljdk/vm/ci/meta/JavaKind;
            if_acmpeq 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 375
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 7 /* classList */
        start local 7 // java.util.List classList
        14: .line 376
            aload 5 /* newArray */
            invokevirtual org.graalvm.compiler.nodes.java.NewArrayNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.unwrapNode:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/FixedNode;
            astore 8 /* successor */
        start local 8 // org.graalvm.compiler.nodes.FixedNode successor
        15: .line 377
            goto 26
        16: .line 378
      StackMap locals: java.util.List org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            aload 8 /* successor */
            checkcast org.graalvm.compiler.nodes.java.StoreIndexedNode
            astore 9 /* store */
        start local 9 // org.graalvm.compiler.nodes.java.StoreIndexedNode store
        17: .line 379
            getstatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.$assertionsDisabled:Z
            ifne 18
            aload 9 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.array:()Lorg/graalvm/compiler/nodes/ValueNode;
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.getDeoptProxyOriginalValue:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            aload 5 /* newArray */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 18
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        18: .line 380
      StackMap locals: org.graalvm.compiler.nodes.java.StoreIndexedNode
      StackMap stack:
            aload 9 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.value:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 10 /* valueNode */
        start local 10 // org.graalvm.compiler.nodes.ValueNode valueNode
        19: .line 381
            aload 10 /* valueNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 23
            aload 10 /* valueNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isNullConstant:()Z
            ifne 23
        20: .line 382
            aload 1 /* snippetReflection */
            ldc Ljava/lang/Class;
            aload 10 /* valueNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 11 /* clazz */
        start local 11 // java.lang.Class clazz
        21: .line 388
            aload 7 /* classList */
            aload 0 /* annotationSubstitutions */
            aload 11 /* clazz */
            invokevirtual com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor.getTargetClass:(Ljava/lang/Class;)Ljava/lang/Class;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 11 // java.lang.Class clazz
        22: .line 389
            goto 25
        23: .line 391
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aconst_null
            astore 7 /* classList */
        24: .line 392
            goto 27
        25: .line 394
      StackMap locals:
      StackMap stack:
            aload 9 /* store */
            invokevirtual org.graalvm.compiler.nodes.java.StoreIndexedNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.unwrapNode:(Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/FixedNode;
            astore 8 /* successor */
        end local 10 // org.graalvm.compiler.nodes.ValueNode valueNode
        end local 9 // org.graalvm.compiler.nodes.java.StoreIndexedNode store
        26: .line 377
      StackMap locals:
      StackMap stack:
            aload 8 /* successor */
            instanceof org.graalvm.compiler.nodes.java.StoreIndexedNode
            ifne 16
        27: .line 401
      StackMap locals:
      StackMap stack:
            aload 6 /* newArrayLengthNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
            istore 9 /* newArrayLength */
        start local 9 // int newArrayLength
        28: .line 403
            aload 7 /* classList */
            ifnull 29
            aload 7 /* classList */
            invokeinterface java.util.List.size:()I
            iload 9 /* newArrayLength */
            if_icmpne 29
            aload 7 /* classList */
            iconst_0
            anewarray java.lang.Class
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast java.lang.Class[]
            goto 30
      StackMap locals: int
      StackMap stack:
        29: aconst_null
      StackMap locals:
      StackMap stack: java.lang.Class[]
        30: areturn
        end local 9 // int newArrayLength
        end local 8 // org.graalvm.compiler.nodes.FixedNode successor
        end local 7 // java.util.List classList
        end local 6 // org.graalvm.compiler.nodes.ValueNode newArrayLengthNode
        end local 5 // org.graalvm.compiler.nodes.java.NewArrayNode newArray
        31: .line 405
      StackMap locals: com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor org.graalvm.compiler.api.replacements.SnippetReflectionProvider org.graalvm.compiler.nodes.ValueNode int org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aconst_null
            areturn
        end local 4 // org.graalvm.compiler.nodes.ValueNode originalArrayNode
        end local 3 // boolean exact
        end local 2 // org.graalvm.compiler.nodes.ValueNode arrayNode
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // com.oracle.svm.hosted.substitute.AnnotationSubstitutionProcessor annotationSubstitutions
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   32     0  annotationSubstitutions  Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;
            0   32     1        snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0   32     2                arrayNode  Lorg/graalvm/compiler/nodes/ValueNode;
            0   32     3                    exact  Z
            1   32     4        originalArrayNode  Lorg/graalvm/compiler/nodes/ValueNode;
            3    7     5                  classes  [Ljava/lang/Class;
            9   31     5                 newArray  Lorg/graalvm/compiler/nodes/java/NewArrayNode;
           10   31     6       newArrayLengthNode  Lorg/graalvm/compiler/nodes/ValueNode;
           14   31     7                classList  Ljava/util/List<Ljava/lang/Class<*>;>;
           15   31     8                successor  Lorg/graalvm/compiler/nodes/FixedNode;
           17   26     9                    store  Lorg/graalvm/compiler/nodes/java/StoreIndexedNode;
           19   26    10                valueNode  Lorg/graalvm/compiler/nodes/ValueNode;
           21   22    11                    clazz  Ljava/lang/Class<*>;
           28   31     9           newArrayLength  I
    Signature: (Lcom/oracle/svm/hosted/substitute/AnnotationSubstitutionProcessor;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/ValueNode;Z)[Ljava/lang/Class<*>;
    MethodParameters:
                         Name  Flags
      annotationSubstitutions  
      snippetReflection        
      arrayNode                
      exact                    

  private static org.graalvm.compiler.nodes.ValueNode getDeoptProxyOriginalValue(org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.ValueNode node
         0: .line 409
            aload 0 /* node */
            astore 1 /* original */
        start local 1 // org.graalvm.compiler.nodes.ValueNode original
         1: .line 410
            goto 3
         2: .line 411
      StackMap locals: org.graalvm.compiler.nodes.ValueNode
      StackMap stack:
            aload 1 /* original */
            checkcast com.oracle.svm.hosted.nodes.DeoptProxyNode
            invokevirtual com.oracle.svm.hosted.nodes.DeoptProxyNode.getOriginalNode:()Lorg/graalvm/compiler/nodes/ValueNode;
            astore 1 /* original */
         3: .line 410
      StackMap locals:
      StackMap stack:
            aload 1 /* original */
            instanceof com.oracle.svm.hosted.nodes.DeoptProxyNode
            ifne 2
         4: .line 413
            aload 1 /* original */
            areturn
        end local 1 // org.graalvm.compiler.nodes.ValueNode original
        end local 0 // org.graalvm.compiler.nodes.ValueNode node
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      node  Lorg/graalvm/compiler/nodes/ValueNode;
            1    5     1  original  Lorg/graalvm/compiler/nodes/ValueNode;
    MethodParameters:
      Name  Flags
      node  

  private static org.graalvm.compiler.nodes.FixedNode unwrapNode(org.graalvm.compiler.nodes.FixedNode);
    descriptor: (Lorg/graalvm/compiler/nodes/FixedNode;)Lorg/graalvm/compiler/nodes/FixedNode;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.FixedNode node
         0: .line 421
            aload 0 /* node */
            astore 1 /* successor */
        start local 1 // org.graalvm.compiler.nodes.FixedNode successor
         1: .line 422
            goto 4
         2: .line 423
      StackMap locals: org.graalvm.compiler.nodes.FixedNode
      StackMap stack:
            getstatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.$assertionsDisabled:Z
            ifne 3
            aload 1 /* successor */
            instanceof com.oracle.svm.core.graal.nodes.DeoptEntryNode
            ifeq 3
            aload 1 /* successor */
            invokevirtual org.graalvm.compiler.nodes.FixedNode.graph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.method:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            checkcast com.oracle.svm.hosted.meta.HostedMethod
            invokevirtual com.oracle.svm.hosted.meta.HostedMethod.isDeoptTarget:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 424
      StackMap locals:
      StackMap stack:
            aload 1 /* successor */
            checkcast org.graalvm.compiler.nodes.FixedWithNextNode
            invokevirtual org.graalvm.compiler.nodes.FixedWithNextNode.next:()Lorg/graalvm/compiler/nodes/FixedNode;
            astore 1 /* successor */
         4: .line 422
      StackMap locals:
      StackMap stack:
            aload 1 /* successor */
            instanceof org.graalvm.compiler.nodes.FullInfopointNode
            ifne 2
            aload 1 /* successor */
            instanceof com.oracle.svm.core.graal.nodes.DeoptEntryNode
            ifne 2
         5: .line 426
            aload 1 /* successor */
            areturn
        end local 1 // org.graalvm.compiler.nodes.FixedNode successor
        end local 0 // org.graalvm.compiler.nodes.FixedNode node
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       node  Lorg/graalvm/compiler/nodes/FixedNode;
            1    6     1  successor  Lorg/graalvm/compiler/nodes/FixedNode;
    MethodParameters:
      Name  Flags
      node  

  private static void registerAtomicUpdaterPlugins(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, boolean);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=4
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 3 // boolean analysis
         0: .line 430
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 2 /* plugins */
            ldc Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 4 /* referenceUpdaterRegistration */
        start local 4 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration referenceUpdaterRegistration
         1: .line 431
            aload 4 /* referenceUpdaterRegistration */
            ldc "newUpdater"
            ldc Ljava/lang/Class;
            ldc Ljava/lang/Class;
            ldc Ljava/lang/String;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$9
            dup
            aload 0 /* metaAccess */
            aload 1 /* snippetReflection */
            iload 3 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$9.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register3:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 440
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 2 /* plugins */
            ldc Ljava/util/concurrent/atomic/AtomicIntegerFieldUpdater;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 5 /* integerUpdaterRegistration */
        start local 5 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration integerUpdaterRegistration
         3: .line 441
            aload 5 /* integerUpdaterRegistration */
            ldc "newUpdater"
            ldc Ljava/lang/Class;
            ldc Ljava/lang/String;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$10
            dup
            aload 0 /* metaAccess */
            aload 1 /* snippetReflection */
            iload 3 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$10.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         4: .line 450
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 2 /* plugins */
            ldc Ljava/util/concurrent/atomic/AtomicLongFieldUpdater;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 6 /* longUpdaterRegistration */
        start local 6 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration longUpdaterRegistration
         5: .line 451
            aload 6 /* longUpdaterRegistration */
            ldc "newUpdater"
            ldc Ljava/lang/Class;
            ldc Ljava/lang/String;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$11
            dup
            aload 0 /* metaAccess */
            aload 1 /* snippetReflection */
            iload 3 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$11.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         6: .line 459
            return
        end local 6 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration longUpdaterRegistration
        end local 5 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration integerUpdaterRegistration
        end local 4 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration referenceUpdaterRegistration
        end local 3 // boolean analysis
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot                          Name  Signature
            0    7     0                    metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    7     1             snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    7     2                       plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    7     3                      analysis  Z
            1    7     4  referenceUpdaterRegistration  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            3    7     5    integerUpdaterRegistration  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            5    7     6       longUpdaterRegistration  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      metaAccess         
      snippetReflection  
      plugins            
      analysis           

  private static void interceptUpdaterInvoke(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, boolean, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;ZLorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=5
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 2 // boolean analysis
        start local 3 // org.graalvm.compiler.nodes.ValueNode tclassNode
        start local 4 // org.graalvm.compiler.nodes.ValueNode fieldNameNode
         0: .line 466
            iload 2 /* analysis */
            ifeq 11
         1: .line 467
            aload 3 /* tclassNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 11
            aload 4 /* fieldNameNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifeq 11
         2: .line 468
            aload 1 /* snippetReflection */
            ldc Ljava/lang/Class;
            aload 3 /* tclassNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            checkcast java.lang.Class
            astore 5 /* tclass */
        start local 5 // java.lang.Class tclass
         3: .line 469
            aload 1 /* snippetReflection */
            ldc Ljava/lang/String;
            aload 4 /* fieldNameNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* fieldName */
        start local 6 // java.lang.String fieldName
         4: .line 471
            aload 5 /* tclass */
            aload 6 /* fieldName */
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
            astore 7 /* field */
        start local 7 // java.lang.reflect.Field field
         5: iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
         6: .line 473
            aload 5 /* tclass */
            aastore
            invokestatic org.graalvm.nativeimage.hosted.RuntimeReflection.register:([Ljava/lang/Class;)V
            iconst_1
            anewarray java.lang.reflect.Field
            dup
            iconst_0
         7: .line 474
            aload 7 /* field */
            aastore
            invokestatic org.graalvm.nativeimage.hosted.RuntimeReflection.register:([Ljava/lang/reflect/Field;)V
         8: .line 477
            aload 0 /* metaAccess */
            aload 7 /* field */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerAsUnsafeAccessed:(Ljdk/vm/ci/meta/MetaAccessProvider;Ljava/lang/reflect/Field;)V
        end local 7 // java.lang.reflect.Field field
         9: .line 478
            goto 11
      StackMap locals: jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.api.replacements.SnippetReflectionProvider int org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode java.lang.Class java.lang.String
      StackMap stack: java.lang.NoSuchFieldException
        10: pop
        end local 6 // java.lang.String fieldName
        end local 5 // java.lang.Class tclass
        11: .line 489
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.graalvm.compiler.nodes.ValueNode fieldNameNode
        end local 3 // org.graalvm.compiler.nodes.ValueNode tclassNode
        end local 2 // boolean analysis
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   12     0         metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0   12     1  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0   12     2           analysis  Z
            0   12     3         tclassNode  Lorg/graalvm/compiler/nodes/ValueNode;
            0   12     4      fieldNameNode  Lorg/graalvm/compiler/nodes/ValueNode;
            3   11     5             tclass  Ljava/lang/Class<*>;
            4   11     6          fieldName  Ljava/lang/String;
            5    9     7              field  Ljava/lang/reflect/Field;
      Exception table:
        from    to  target  type
           4     9      10  Class java.lang.NoSuchFieldException
    MethodParameters:
                   Name  Flags
      metaAccess         
      snippetReflection  
      analysis           
      tclassNode         
      fieldNameNode      

  private static void registerAsUnsafeAccessed(jdk.vm.ci.meta.MetaAccessProvider, java.lang.reflect.Field);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Ljava/lang/reflect/Field;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // java.lang.reflect.Field field
         0: .line 492
            aload 0 /* metaAccess */
            aload 1 /* field */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaField:(Ljava/lang/reflect/Field;)Ljdk/vm/ci/meta/ResolvedJavaField;
            checkcast com.oracle.graal.pointsto.meta.AnalysisField
            astore 2 /* targetField */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisField targetField
         1: .line 493
            aload 2 /* targetField */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.registerAsAccessed:()V
         2: .line 494
            aload 0 /* metaAccess */
            checkcast com.oracle.graal.pointsto.infrastructure.UniverseMetaAccess
            invokevirtual com.oracle.graal.pointsto.infrastructure.UniverseMetaAccess.getUniverse:()Lcom/oracle/graal/pointsto/infrastructure/Universe;
            checkcast com.oracle.graal.pointsto.meta.AnalysisUniverse
            astore 3 /* universe */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisUniverse universe
         3: .line 495
            aload 2 /* targetField */
            aload 3 /* universe */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.registerAsUnsafeAccessed:(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;)V
         4: .line 496
            return
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisUniverse universe
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisField targetField
        end local 1 // java.lang.reflect.Field field
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0   metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    5     1        field  Ljava/lang/reflect/Field;
            1    5     2  targetField  Lcom/oracle/graal/pointsto/meta/AnalysisField;
            3    5     3     universe  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    MethodParameters:
            Name  Flags
      metaAccess  
      field       

  private static void registerObjectPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 499
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Ljava/lang/Object;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 1 /* r */
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 500
            aload 1 /* r */
            ldc "clone"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$12
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$12.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 509
            aload 1 /* r */
            ldc "hashCode"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$13
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$13.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 517
            return
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    4     1        r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
         Name  Flags
      plugins  

  public static org.graalvm.compiler.replacements.nodes.ObjectClone objectCloneNode(org.graalvm.compiler.replacements.nodes.MacroNode$MacroParams, boolean);
    descriptor: (Lorg/graalvm/compiler/replacements/nodes/MacroNode$MacroParams;Z)Lorg/graalvm/compiler/replacements/nodes/ObjectClone;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.replacements.nodes.MacroNode$MacroParams macroParams
        start local 1 // boolean parsingIntrinsic
         0: .line 520
            iload 1 /* parsingIntrinsic */
            ifeq 2
         1: .line 521
            new com.oracle.svm.core.graal.jdk.SubstrateObjectCloneNode
            dup
            aload 0 /* macroParams */
            invokespecial com.oracle.svm.core.graal.jdk.SubstrateObjectCloneNode.<init>:(Lorg/graalvm/compiler/replacements/nodes/MacroNode$MacroParams;)V
            areturn
         2: .line 523
      StackMap locals:
      StackMap stack:
            new com.oracle.svm.core.graal.jdk.ObjectCloneWithExceptionNode
            dup
            aload 0 /* macroParams */
            invokespecial com.oracle.svm.core.graal.jdk.ObjectCloneWithExceptionNode.<init>:(Lorg/graalvm/compiler/replacements/nodes/MacroNode$MacroParams;)V
            areturn
        end local 1 // boolean parsingIntrinsic
        end local 0 // org.graalvm.compiler.replacements.nodes.MacroNode$MacroParams macroParams
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0       macroParams  Lorg/graalvm/compiler/replacements/nodes/MacroNode$MacroParams;
            0    3     1  parsingIntrinsic  Z
    MethodParameters:
                  Name  Flags
      macroParams       
      parsingIntrinsic  

  private static void registerUnsafePlugins(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, boolean);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=5, args_size=4
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 3 // boolean analysis
         0: .line 528
            aload 0 /* metaAccess */
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lsun/misc/Unsafe;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            aload 2 /* snippetReflection */
            iload 3 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerUnsafePlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
         1: .line 529
            getstatic org.graalvm.compiler.serviceprovider.JavaVersionUtil.JAVA_SPEC:I
            bipush 8
            if_icmple 6
         2: .line 530
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc "jdk.internal.misc.Unsafe"
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/String;)V
            astore 4 /* r */
        start local 4 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         3: .line 531
            aload 0 /* metaAccess */
            aload 4 /* r */
            aload 2 /* snippetReflection */
            iload 3 /* analysis */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerUnsafePlugins:(Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
         4: .line 533
            aload 4 /* r */
            ldc "objectFieldOffset"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            ldc Ljava/lang/Class;
            ldc Ljava/lang/String;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$14
            dup
            aload 2 /* snippetReflection */
            iload 3 /* analysis */
            aload 0 /* metaAccess */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$14.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;ZLjdk/vm/ci/meta/MetaAccessProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register3:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         5: .line 550
            aload 4 /* r */
            ldc "allocateUninitializedArray"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            ldc Ljava/lang/Class;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$15
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$15.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register3:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
        end local 4 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         6: .line 574
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean analysis
        end local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0         metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    7     1            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    7     2  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    7     3           analysis  Z
            3    6     4                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      metaAccess         
      plugins            
      snippetReflection  
      analysis           

  private static void registerUnsafePlugins(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, boolean);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=4, args_size=4
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        start local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 3 // boolean analysis
         0: .line 577
            aload 1 /* r */
            ldc "objectFieldOffset"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            ldc Ljava/lang/reflect/Field;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$16
            dup
            aload 2 /* snippetReflection */
            iload 3 /* analysis */
            aload 0 /* metaAccess */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$16.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;ZLjdk/vm/ci/meta/MetaAccessProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         1: .line 587
            aload 1 /* r */
            ldc "allocateInstance"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$17
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$17.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 603
            return
        end local 3 // boolean analysis
        end local 2 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0         metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    3     1                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            0    3     2  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    3     3           analysis  Z
    MethodParameters:
                   Name  Flags
      metaAccess         
      r                  
      snippetReflection  
      analysis           

  private static boolean processObjectFieldOffset(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, java.lang.reflect.Field, boolean, jdk.vm.ci.meta.MetaAccessProvider);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljava/lang/reflect/Field;ZLjdk/vm/ci/meta/MetaAccessProvider;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        start local 1 // java.lang.reflect.Field targetField
        start local 2 // boolean analysis
        start local 3 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
         0: .line 606
            aload 1 /* targetField */
            ifnonnull 2
         1: .line 608
            iconst_0
            ireturn
         2: .line 611
      StackMap locals:
      StackMap stack:
            iload 2 /* analysis */
            ifeq 5
         3: .line 613
            aload 3 /* metaAccess */
            aload 1 /* targetField */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerAsUnsafeAccessed:(Ljdk/vm/ci/meta/MetaAccessProvider;Ljava/lang/reflect/Field;)V
         4: .line 615
            iconst_0
            ireturn
         5: .line 618
      StackMap locals:
      StackMap stack:
            aload 3 /* metaAccess */
            checkcast com.oracle.svm.hosted.meta.HostedMetaAccess
            astore 4 /* hostedMetaAccess */
        start local 4 // com.oracle.svm.hosted.meta.HostedMetaAccess hostedMetaAccess
         6: .line 619
            aload 4 /* hostedMetaAccess */
            aload 1 /* targetField */
            invokevirtual com.oracle.svm.hosted.meta.HostedMetaAccess.lookupJavaField:(Ljava/lang/reflect/Field;)Lcom/oracle/svm/hosted/meta/HostedField;
            astore 5 /* hostedField */
        start local 5 // com.oracle.svm.hosted.meta.HostedField hostedField
         7: .line 620
            aload 5 /* hostedField */
            getfield com.oracle.svm.hosted.meta.HostedField.wrapped:Lcom/oracle/graal/pointsto/meta/AnalysisField;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.isUnsafeAccessed:()Z
            ifeq 11
         8: .line 621
            aload 5 /* hostedField */
            invokevirtual com.oracle.svm.hosted.meta.HostedField.getLocation:()I
            i2l
            invokestatic jdk.vm.ci.meta.JavaConstant.forLong:(J)Ljdk/vm/ci/meta/PrimitiveConstant;
            astore 6 /* offsetValue */
        start local 6 // jdk.vm.ci.meta.JavaConstant offsetValue
         9: .line 622
            aload 0 /* b */
            getstatic jdk.vm.ci.meta.JavaKind.Long:Ljdk/vm/ci/meta/JavaKind;
            aload 6 /* offsetValue */
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getGraph:()Lorg/graalvm/compiler/nodes/StructuredGraph;
            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;
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.addPush:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
            pop
        10: .line 623
            iconst_1
            ireturn
        end local 6 // jdk.vm.ci.meta.JavaConstant offsetValue
        11: .line 630
      StackMap locals: com.oracle.svm.hosted.meta.HostedMetaAccess com.oracle.svm.hosted.meta.HostedField
      StackMap stack:
            iconst_0
            ireturn
        end local 5 // com.oracle.svm.hosted.meta.HostedField hostedField
        end local 4 // com.oracle.svm.hosted.meta.HostedMetaAccess hostedMetaAccess
        end local 3 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        end local 2 // boolean analysis
        end local 1 // java.lang.reflect.Field targetField
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   12     0                 b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
            0   12     1       targetField  Ljava/lang/reflect/Field;
            0   12     2          analysis  Z
            0   12     3        metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            6   12     4  hostedMetaAccess  Lcom/oracle/svm/hosted/meta/HostedMetaAccess;
            7   12     5       hostedField  Lcom/oracle/svm/hosted/meta/HostedField;
            9   11     6       offsetValue  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
             Name  Flags
      b            
      targetField  
      analysis     
      metaAccess   

  private static void registerArrayPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 2 // boolean analysis
         0: .line 636
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Ljava/lang/reflect/Array;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.setAllowOverwrite:(Z)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            astore 3 /* r */
        start local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 637
            aload 3 /* r */
            ldc "newInstance"
            ldc Ljava/lang/Class;
            ldc [I
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18
            dup
            iload 2 /* analysis */
            aload 1 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18.<init>:(ZLorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 662
            return
        end local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 2 // boolean analysis
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    3     1  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    3     2           analysis  Z
            1    3     3                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      plugins            
      snippetReflection  
      analysis           

  private static void registerArraysPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // boolean analysis
         0: .line 666
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Ljava/util/Arrays;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.setAllowOverwrite:(Z)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 668
            aload 2 /* r */
            ldc "copyOf"
            ldc [Ljava/lang/Object;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$19
            dup
            iload 1 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$19.<init>:(Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 686
            aload 2 /* r */
            ldc "copyOf"
            ldc [Ljava/lang/Object;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$20
            dup
            iload 1 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$20.<init>:(Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register3:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 712
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // boolean analysis
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0   plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    4     1  analysis  Z
            1    4     2         r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
          Name  Flags
      plugins   
      analysis  

  private static void registerKnownIntrinsicsPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, boolean);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=8, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // boolean analysis
         0: .line 715
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Lcom/oracle/svm/core/snippets/KnownIntrinsics;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 716
            aload 2 /* r */
            ldc "heapBase"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$21
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$21.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 723
            aload 2 /* r */
            ldc "readHub"
            ldc Ljava/lang/Object;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$22
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$22.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 731
            aload 2 /* r */
            ldc "nonNullPointer"
            ldc Lorg/graalvm/word/Pointer;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$23
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$23.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         4: .line 739
            aload 2 /* r */
            ldc "readStackPointer"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$24
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$24.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         5: .line 746
            aload 2 /* r */
            ldc "readCallerStackPointer"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$25
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$25.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         6: .line 754
            aload 2 /* r */
            ldc "readReturnAddress"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$26
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$26.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         7: .line 762
            aload 2 /* r */
            ldc "farReturn"
            ldc Ljava/lang/Object;
            ldc Lorg/graalvm/word/Pointer;
            ldc Lorg/graalvm/nativeimage/c/function/CodePointer;
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$27
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$27.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register4:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         8: .line 775
            aload 2 /* r */
            ldc "testDeoptimize"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$28
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$28.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         9: .line 783
            aload 2 /* r */
            ldc "isDeoptimizationTarget"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$29
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$29.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
        10: .line 801
            aload 2 /* r */
            ldc "convertUnknownValue"
            ldc Ljava/lang/Object;
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$30
            dup
            iload 1 /* analysis */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$30.<init>:(Z)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
        11: .line 816
            aload 2 /* r */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerCastExact:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;)V
        12: .line 817
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // boolean analysis
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0   plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0   13     1  analysis  Z
            1   13     2         r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
          Name  Flags
      plugins   
      analysis  

  public static void registerCastExact(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         0: .line 820
            aload 0 /* r */
            ldc "castExact"
            ldc Ljava/lang/Object;
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         1: .line 834
            return
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
      Name  Flags
      r     

  private static void checkNeverInline(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
         0: .line 837
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc Lcom/oracle/svm/core/annotate/NeverInline;
            invokestatic org.graalvm.util.DirectAnnotationAccess.isAnnotationPresent:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Z
            ifne 4
         1: .line 838
            new java.lang.StringBuilder
            dup
            ldc "Accessing the stack pointer or instruction pointer of the caller frame is only safe and deterministic if the method is not inlined. Therefore, the method "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 839
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " must be annoated with @"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc Lcom/oracle/svm/core/annotate/NeverInline;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 838
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.oracle.svm.core.util.VMError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
         4: .line 841
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
    MethodParameters:
      Name  Flags
      b     

  private static org.graalvm.compiler.core.common.type.IntegerStamp nonZeroWord();
    descriptor: ()Lorg/graalvm/compiler/core/common/type/IntegerStamp;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=0, args_size=0
         0: .line 844
            bipush 64
            lconst_1
            ldc -1
            invokestatic org.graalvm.compiler.core.common.type.StampFactory.forUnsignedInteger:(IJJ)Lorg/graalvm/compiler/core/common/type/IntegerStamp;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void registerStackValuePlugins(org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 848
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lorg/graalvm/nativeimage/StackValue;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 850
            aload 2 /* r */
            ldc "get"
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$32
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$32.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 859
            aload 2 /* r */
            ldc "get"
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$33
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$33.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 870
            aload 2 /* r */
            ldc "get"
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$34
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$34.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         4: .line 880
            aload 2 /* r */
            ldc "get"
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$35
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$35.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         5: .line 892
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    6     1            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    6     2                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      snippetReflection  
      plugins            

  private static jdk.vm.ci.meta.ResolvedJavaType typeValue(jdk.vm.ci.meta.ConstantReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.ValueNode, java.lang.String);
    descriptor: (Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        start local 3 // org.graalvm.compiler.nodes.ValueNode typeNode
        start local 4 // java.lang.String name
         0: .line 895
            aload 3 /* typeNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 2
         1: .line 896
            aload 1 /* b */
            new java.lang.StringBuilder
            dup
            ldc "parameter "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is not a compile time constant for call to "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* targetMethod */
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 1 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bci:()I
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.asStackTraceElement:(I)Ljava/lang/StackTraceElement;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bailout:(Ljava/lang/String;)Ljdk/vm/ci/code/BailoutException;
            athrow
         2: .line 898
      StackMap locals:
      StackMap stack:
            aload 0 /* constantReflection */
            aload 3 /* typeNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asConstant:()Ljdk/vm/ci/meta/Constant;
            invokeinterface jdk.vm.ci.meta.ConstantReflectionProvider.asJavaType:(Ljdk/vm/ci/meta/Constant;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 5 /* type */
        start local 5 // jdk.vm.ci.meta.ResolvedJavaType type
         3: .line 899
            aload 5 /* type */
            ifnonnull 5
         4: .line 900
            aload 1 /* b */
            new java.lang.StringBuilder
            dup
            ldc "parameter "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is null for call to "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* targetMethod */
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 1 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bci:()I
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.asStackTraceElement:(I)Ljava/lang/StackTraceElement;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bailout:(Ljava/lang/String;)Ljdk/vm/ci/code/BailoutException;
            athrow
         5: .line 902
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
            aload 5 /* type */
            areturn
        end local 5 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 4 // java.lang.String name
        end local 3 // org.graalvm.compiler.nodes.ValueNode typeNode
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        end local 0 // jdk.vm.ci.meta.ConstantReflectionProvider constantReflection
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0  constantReflection  Ljdk/vm/ci/meta/ConstantReflectionProvider;
            0    6     1                   b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
            0    6     2        targetMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0    6     3            typeNode  Lorg/graalvm/compiler/nodes/ValueNode;
            0    6     4                name  Ljava/lang/String;
            3    6     5                type  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
                    Name  Flags
      constantReflection  
      b                   
      targetMethod        
      typeNode            
      name                

  private static void registerClassPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.api.replacements.SnippetReflectionProvider);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
         0: .line 906
            aload 0 /* plugins */
            aload 1 /* snippetReflection */
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerClassDesiredAssertionStatusPlugin:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
         1: .line 907
            return
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    2     1  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    MethodParameters:
                   Name  Flags
      plugins            
      snippetReflection  

  public static void registerClassDesiredAssertionStatusPlugin(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.api.replacements.SnippetReflectionProvider);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
         0: .line 910
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Ljava/lang/Class;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 911
            aload 2 /* r */
            ldc "desiredAssertionStatus"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$36
            dup
            aload 1 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$36.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 931
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    3     1  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            1    3     2                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      plugins            
      snippetReflection  

  private static void registerEdgesPlugins(jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, boolean);
    descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Z)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=9, locals=8, args_size=3
        start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 2 // boolean analysis
         0: .line 934
            iload 2 /* analysis */
            ifeq 8
         1: .line 935
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lorg/graalvm/compiler/graph/Edges;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.setAllowOverwrite:(Z)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            astore 3 /* r */
        start local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         2: .line 936
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lorg/graalvm/compiler/graph/Node;
            aastore
            dup
            iconst_1
            ldc Lorg/graalvm/compiler/graph/NodeList;
            aastore
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 7
      StackMap locals: jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration top int int java.lang.Class[]
      StackMap stack:
         3: aload 7
            iload 5
            aaload
            astore 4 /* c */
        start local 4 // java.lang.Class c
         4: .line 937
            aload 3 /* r */
            new java.lang.StringBuilder
            dup
            ldc "get"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* c */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Unsafe"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc Lorg/graalvm/compiler/graph/Node;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$37
            dup
            aload 0 /* metaAccess */
            aload 4 /* c */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$37.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Ljava/lang/Class;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         5: .line 946
            aload 3 /* r */
            new java.lang.StringBuilder
            dup
            ldc "put"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* c */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "Unsafe"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc Lorg/graalvm/compiler/graph/Node;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            aload 4 /* c */
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$38
            dup
            aload 0 /* metaAccess */
            aload 4 /* c */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$38.<init>:(Ljdk/vm/ci/meta/MetaAccessProvider;Ljava/lang/Class;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register3:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
        end local 4 // java.lang.Class c
         6: .line 936
            iinc 5 1
      StackMap locals:
      StackMap stack:
         7: iload 5
            iload 6
            if_icmplt 3
        end local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         8: .line 955
      StackMap locals: jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int
      StackMap stack:
            return
        end local 2 // boolean analysis
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0  metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0    9     1     plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    9     2    analysis  Z
            2    8     3           r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            4    6     4           c  Ljava/lang/Class<*>;
    MethodParameters:
            Name  Flags
      metaAccess  
      plugins     
      analysis    

  protected static long longValue(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.ValueNode, java.lang.String);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/ValueNode;Ljava/lang/String;)J
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        start local 2 // org.graalvm.compiler.nodes.ValueNode node
        start local 3 // java.lang.String name
         0: .line 958
            aload 2 /* node */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            ifne 2
         1: .line 959
            aload 0 /* b */
            new java.lang.StringBuilder
            dup
            ldc "parameter "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 3 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " is not a compile time constant for call to "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* targetMethod */
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " in "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 0 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bci:()I
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.asStackTraceElement:(I)Ljava/lang/StackTraceElement;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bailout:(Ljava/lang/String;)Ljdk/vm/ci/code/BailoutException;
            athrow
         2: .line 961
      StackMap locals:
      StackMap stack:
            aload 2 /* node */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface jdk.vm.ci.meta.JavaConstant.asLong:()J
            lreturn
        end local 3 // java.lang.String name
        end local 2 // org.graalvm.compiler.nodes.ValueNode node
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0             b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
            0    3     1  targetMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0    3     2          node  Lorg/graalvm/compiler/nodes/ValueNode;
            0    3     3          name  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      b             
      targetMethod  
      node          
      name          

  private static void registerJFRThrowablePlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.nodes.spi.Replacements);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // org.graalvm.compiler.nodes.spi.Replacements replacements
         0: .line 970
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc "oracle.jrockit.jfr.jdkevents.ThrowableTracer"
            aload 1 /* replacements */
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/String;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.setAllowOverwrite:(Z)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 971
            aload 2 /* r */
            ldc "traceError"
            ldc Ljava/lang/Error;
            ldc Ljava/lang/String;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$39
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$39.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 977
            aload 2 /* r */
            ldc "traceThrowable"
            ldc Ljava/lang/Throwable;
            ldc Ljava/lang/String;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$40
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$40.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 983
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.spi.Replacements replacements
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0       plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    4     1  replacements  Lorg/graalvm/compiler/nodes/spi/Replacements;
            1    4     2             r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
              Name  Flags
      plugins       
      replacements  

  private static void registerJFREventTokenPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins, org.graalvm.compiler.nodes.spi.Replacements);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        start local 1 // org.graalvm.compiler.nodes.spi.Replacements replacements
         0: .line 986
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc "com.oracle.jrockit.jfr.EventToken"
            aload 1 /* replacements */
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/String;Lorg/graalvm/compiler/nodes/spi/Replacements;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 987
            aload 2 /* r */
            ldc "isEnabled"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$41
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$41.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 995
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.spi.Replacements replacements
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0       plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            0    3     1  replacements  Lorg/graalvm/compiler/nodes/spi/Replacements;
            1    3     2             r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
              Name  Flags
      plugins       
      replacements  

  private static void registerVMConfigurationPlugins(org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 998
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lorg/graalvm/nativeimage/ImageSingletons;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 999
            aload 2 /* r */
            ldc "contains"
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$42
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$42.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 1008
            aload 2 /* r */
            ldc "lookup"
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$43
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$43.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 1017
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    4     1            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    4     2                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      snippetReflection  
      plugins            

  private static void registerPlatformPlugins(org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 1020
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lorg/graalvm/nativeimage/Platform;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 1021
            aload 2 /* r */
            ldc "includedIn"
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$44
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$44.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 1031
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    3     1            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    3     2                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      snippetReflection  
      plugins            

  private static void registerAWTPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 1038
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Ljava/awt/GraphicsEnvironment;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 1 /* r */
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 1039
            aload 1 /* r */
            ldc "isHeadless"
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$45
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$45.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register0:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 1048
            return
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    3     1        r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
         Name  Flags
      plugins  

  private static void registerSizeOfPlugins(org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 1051
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 1 /* plugins */
            ldc Lorg/graalvm/nativeimage/c/struct/SizeOf;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 2 /* r */
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 1052
            aload 2 /* r */
            ldc "get"
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$46
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$46.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 1062
            aload 2 /* r */
            ldc "unsigned"
            ldc Ljava/lang/Class;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$47
            dup
            aload 0 /* snippetReflection */
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$47.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register1:(Ljava/lang/String;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 1072
            return
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
        end local 0 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    4     0  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    4     1            plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    4     2                  r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
                   Name  Flags
      snippetReflection  
      plugins            

  private static void registerReferenceAccessPlugins(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
         0: .line 1075
            new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
            dup
            aload 0 /* plugins */
            ldc Lcom/oracle/svm/core/heap/ReferenceAccessImpl;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;)V
            astore 1 /* r */
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
         1: .line 1076
            aload 1 /* r */
            ldc "getCompressedRepresentation"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            ldc Ljava/lang/Object;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$48
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$48.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         2: .line 1090
            aload 1 /* r */
            ldc "uncompressReference"
            ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
            ldc Lorg/graalvm/word/UnsignedWord;
            new com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$49
            dup
            invokespecial com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$49.<init>:()V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration.register2:(Ljava/lang/String;Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
         3: .line 1106
            return
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration r
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins plugins
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
            1    4     1        r  Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;
    MethodParameters:
         Name  Flags
      plugins  

  private static <T> T constantObjectParameter(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, jdk.vm.ci.meta.ResolvedJavaMethod, int, java.lang.Class<T>, org.graalvm.compiler.nodes.ValueNode);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/meta/ResolvedJavaMethod;ILjava/lang/Class;Lorg/graalvm/compiler/nodes/ValueNode;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        start local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        start local 3 // int parameterIndex
        start local 4 // java.lang.Class declaredType
        start local 5 // org.graalvm.compiler.nodes.ValueNode classNode
         0: .line 1110
            aload 5 /* classNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
            aload 0 /* b */
            aload 2 /* targetMethod */
            iload 3 /* parameterIndex */
            ldc "parameter is not a compile time constant"
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.checkParameterUsage:(ZLorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;ILjava/lang/String;)V
         1: .line 1111
            aload 1 /* snippetReflection */
            aload 4 /* declaredType */
            aload 5 /* classNode */
            invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            astore 6 /* result */
        start local 6 // java.lang.Object result
         2: .line 1112
            aload 6 /* result */
            ifnull 3
            iconst_1
            goto 4
      StackMap locals: java.lang.Object
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: aload 0 /* b */
            aload 2 /* targetMethod */
            iload 3 /* parameterIndex */
            ldc "parameter is null"
            invokestatic com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.checkParameterUsage:(ZLorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;ILjava/lang/String;)V
         5: .line 1113
            aload 6 /* result */
            areturn
        end local 6 // java.lang.Object result
        end local 5 // org.graalvm.compiler.nodes.ValueNode classNode
        end local 4 // java.lang.Class declaredType
        end local 3 // int parameterIndex
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        end local 1 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 0 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0                  b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
            0    6     1  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    6     2       targetMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0    6     3     parameterIndex  I
            0    6     4       declaredType  Ljava/lang/Class<TT;>;
            0    6     5          classNode  Lorg/graalvm/compiler/nodes/ValueNode;
            2    6     6             result  TT;
    Signature: <T:Ljava/lang/Object;>(Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/meta/ResolvedJavaMethod;ILjava/lang/Class<TT;>;Lorg/graalvm/compiler/nodes/ValueNode;)TT;
    MethodParameters:
                   Name  Flags
      b                  
      snippetReflection  
      targetMethod       
      parameterIndex     
      declaredType       
      classNode          

  private static void checkParameterUsage(boolean, org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, jdk.vm.ci.meta.ResolvedJavaMethod, int, java.lang.String);
    descriptor: (ZLorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;ILjava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=5
        start local 0 // boolean condition
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        start local 3 // int parameterIndex
        start local 4 // java.lang.String message
         0: .line 1117
            iload 0 /* condition */
            ifeq 2
         1: .line 1118
            return
         2: .line 1121
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* parameterName */
        start local 5 // java.lang.String parameterName
         3: .line 1122
            aload 2 /* targetMethod */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getLocalVariableTable:()Ljdk/vm/ci/meta/LocalVariableTable;
            astore 6 /* variableTable */
        start local 6 // jdk.vm.ci.meta.LocalVariableTable variableTable
         4: .line 1123
            aload 6 /* variableTable */
            ifnull 8
         5: .line 1124
            aload 6 /* variableTable */
            iload 3 /* parameterIndex */
            iconst_0
            invokevirtual jdk.vm.ci.meta.LocalVariableTable.getLocal:(II)Ljdk/vm/ci/meta/Local;
            astore 7 /* variable */
        start local 7 // jdk.vm.ci.meta.Local variable
         6: .line 1125
            aload 7 /* variable */
            ifnull 8
         7: .line 1126
            aload 7 /* variable */
            invokevirtual jdk.vm.ci.meta.Local.getName:()Ljava/lang/String;
            astore 5 /* parameterName */
        end local 7 // jdk.vm.ci.meta.Local variable
         8: .line 1129
      StackMap locals: java.lang.String jdk.vm.ci.meta.LocalVariableTable
      StackMap stack:
            aload 5 /* parameterName */
            ifnonnull 10
         9: .line 1131
            iload 3 /* parameterIndex */
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            astore 5 /* parameterName */
        10: .line 1134
      StackMap locals:
      StackMap stack:
            ldc "%s: parameter %s of call to %s in %s"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 4 /* message */
            aastore
            dup
            iconst_1
            aload 5 /* parameterName */
            aastore
            dup
            iconst_2
            aload 2 /* targetMethod */
            aastore
            dup
            iconst_3
            aload 1 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 1 /* b */
            invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.bci:()I
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.asStackTraceElement:(I)Ljava/lang/StackTraceElement;
            aastore
            invokestatic com.oracle.svm.core.util.UserError.abort:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/oracle/svm/core/util/UserError$UserException;
            athrow
        end local 6 // jdk.vm.ci.meta.LocalVariableTable variableTable
        end local 5 // java.lang.String parameterName
        end local 4 // java.lang.String message
        end local 3 // int parameterIndex
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
        end local 0 // boolean condition
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   11     0       condition  Z
            0   11     1               b  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
            0   11     2    targetMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0   11     3  parameterIndex  I
            0   11     4         message  Ljava/lang/String;
            3   11     5   parameterName  Ljava/lang/String;
            4   11     6   variableTable  Ljdk/vm/ci/meta/LocalVariableTable;
            6    8     7        variable  Ljdk/vm/ci/meta/Local;
    MethodParameters:
                Name  Flags
      condition       
      b               
      targetMethod    
      parameterIndex  
      message         
}
SourceFile: "SubstrateGraphBuilderPlugins.java"
NestMembers:
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$1  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$10  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$11  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$12  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$13  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$14  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$15  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$16  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$17  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$19  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$2  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$20  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$21  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$22  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$23  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$24  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$25  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$26  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$27  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$28  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$29  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$3  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$30  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$32  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$33  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$34  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$35  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$36  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$37  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$38  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$39  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$4  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$40  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$41  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$42  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$43  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$44  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$45  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$46  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$47  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$48  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$49  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$5  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$6  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$7  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$8  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$9
InnerClasses:
  public UserException = com.oracle.svm.core.util.UserError$UserException of com.oracle.svm.core.util.UserError
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$1
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$10
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$11
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$12
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$13
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$14
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$15
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$16
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$17
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$19
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$2
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$20
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$21
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$22
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$23
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$24
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$25
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$26
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$27
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$28
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$29
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$3
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$30
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$32
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$33
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$34
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$35
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$36
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$37
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$38
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$39
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$4
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$40
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$41
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$42
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$43
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$44
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$45
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$46
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$47
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$48
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$49
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$5
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$6
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$7
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$8
  com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$9
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Receiver = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
  public Registration = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
  public MacroParams = org.graalvm.compiler.replacements.nodes.MacroNode$MacroParams of org.graalvm.compiler.replacements.nodes.MacroNode