public class org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker
  super_class: java.lang.Object
{
  protected final org.graalvm.compiler.replacements.ReplacementsImpl replacements;
    descriptor: Lorg/graalvm/compiler/replacements/ReplacementsImpl;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final jdk.vm.ci.meta.ResolvedJavaMethod method;
    descriptor: Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final jdk.vm.ci.meta.ResolvedJavaMethod substitutedMethod;
    descriptor: Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0014) ACC_PROTECTED, 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=1, locals=0, args_size=0
         0: .line 407
            ldc Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.replacements.ReplacementsImpl, jdk.vm.ci.meta.ResolvedJavaMethod, jdk.vm.ci.meta.ResolvedJavaMethod);
    descriptor: (Lorg/graalvm/compiler/replacements/ReplacementsImpl;Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.replacements.ReplacementsImpl replacements
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod substitute
        start local 3 // jdk.vm.ci.meta.ResolvedJavaMethod substitutedMethod
         0: .line 424
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 425
            aload 0 /* this */
            aload 1 /* replacements */
            putfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
         2: .line 426
            aload 0 /* this */
            aload 2 /* substitute */
            putfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
         3: .line 427
            aload 0 /* this */
            aload 3 /* substitutedMethod */
            putfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.substitutedMethod:Ljdk/vm/ci/meta/ResolvedJavaMethod;
         4: .line 428
            return
        end local 3 // jdk.vm.ci.meta.ResolvedJavaMethod substitutedMethod
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod substitute
        end local 1 // org.graalvm.compiler.replacements.ReplacementsImpl replacements
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0    5     1       replacements  Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            0    5     2         substitute  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0    5     3  substitutedMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
    MethodParameters:
                   Name  Flags
      replacements       
      substitute         
      substitutedMethod  

  public org.graalvm.compiler.nodes.StructuredGraph makeGraph(org.graalvm.compiler.debug.DebugContext, org.graalvm.compiler.bytecode.BytecodeProvider, java.lang.Object[], boolean, org.graalvm.compiler.graph.NodeSourcePosition, org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/bytecode/BytecodeProvider;[Ljava/lang/Object;ZLorg/graalvm/compiler/graph/NodeSourcePosition;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;)Lorg/graalvm/compiler/nodes/StructuredGraph;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=11, args_size=7
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.debug.DebugContext debug
        start local 2 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
        start local 3 // java.lang.Object[] args
        start local 4 // boolean trackNodeSourcePosition
        start local 5 // org.graalvm.compiler.graph.NodeSourcePosition replaceePosition
        start local 6 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext context
         0: .line 433
            aconst_null
            astore 7
            aconst_null
            astore 8
         1: aload 1 /* debug */
            ldc "BuildSnippetGraph"
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 9 /* s */
        start local 9 // org.graalvm.compiler.debug.DebugContext$Scope s
         2: .line 434
            getstatic org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.$assertionsDisabled:Z
            ifne 3
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.hasBytecodes:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 435
      StackMap locals: java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack:
            aload 0 /* this */
            aload 1 /* debug */
            aload 2 /* bytecodeProvider */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 3 /* args */
            iload 4 /* trackNodeSourcePosition */
            aload 5 /* replaceePosition */
            aload 6 /* context */
            invokevirtual org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.buildInitialGraph:(Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/bytecode/BytecodeProvider;Ljdk/vm/ci/meta/ResolvedJavaMethod;[Ljava/lang/Object;ZLorg/graalvm/compiler/graph/NodeSourcePosition;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;)Lorg/graalvm/compiler/nodes/StructuredGraph;
            astore 10 /* graph */
        start local 10 // org.graalvm.compiler.nodes.StructuredGraph graph
         4: .line 437
            aload 0 /* this */
            aload 10 /* graph */
            invokevirtual org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.finalizeGraph:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
         5: .line 439
            aload 1 /* debug */
            iconst_2
            aload 10 /* graph */
            ldc "%s: Final"
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
            invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 441
            aload 10 /* graph */
         7: .line 442
            aload 9 /* s */
            ifnull 8
            aload 9 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
         8: .line 441
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack: org.graalvm.compiler.nodes.StructuredGraph
            areturn
        end local 10 // org.graalvm.compiler.nodes.StructuredGraph graph
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack: java.lang.Throwable
         9: astore 7
        10: .line 442
            aload 9 /* s */
            ifnull 11
            aload 9 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 9 // org.graalvm.compiler.debug.DebugContext$Scope s
      StackMap locals:
      StackMap stack:
        11: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 8
            aload 7
            ifnonnull 13
            aload 8
            astore 7
            goto 14
      StackMap locals:
      StackMap stack:
        13: aload 7
            aload 8
            if_acmpeq 14
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        14: aload 7
            athrow
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext
      StackMap stack: java.lang.Throwable
        15: astore 7 /* e */
        start local 7 // java.lang.Throwable e
        16: .line 443
            aload 1 /* debug */
            aload 7 /* e */
            invokevirtual org.graalvm.compiler.debug.DebugContext.handle:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 7 // java.lang.Throwable e
        end local 6 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext context
        end local 5 // org.graalvm.compiler.graph.NodeSourcePosition replaceePosition
        end local 4 // boolean trackNodeSourcePosition
        end local 3 // java.lang.Object[] args
        end local 2 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
        end local 1 // org.graalvm.compiler.debug.DebugContext debug
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   17     0                     this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0   17     1                    debug  Lorg/graalvm/compiler/debug/DebugContext;
            0   17     2         bytecodeProvider  Lorg/graalvm/compiler/bytecode/BytecodeProvider;
            0   17     3                     args  [Ljava/lang/Object;
            0   17     4  trackNodeSourcePosition  Z
            0   17     5         replaceePosition  Lorg/graalvm/compiler/graph/NodeSourcePosition;
            0   17     6                  context  Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;
            2   11     9                        s  Lorg/graalvm/compiler/debug/DebugContext$Scope;
            4    9    10                    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
           16   17     7                        e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2     7       9  any
           1     8      12  any
           9    12      12  any
           0     8      15  Class java.lang.Throwable
           9    15      15  Class java.lang.Throwable
    MethodParameters:
                         Name  Flags
      debug                    
      bytecodeProvider         
      args                     
      trackNodeSourcePosition  
      replaceePosition         
      context                  

  protected void finalizeGraph(org.graalvm.compiler.nodes.StructuredGraph);
    descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
         0: .line 451
            getstatic org.graalvm.compiler.core.common.GraalOptions.SnippetCounters:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 1
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            ldc Lorg/graalvm/compiler/replacements/SnippetCounterNode;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.isEmpty:()Z
            ifeq 6
         1: .line 452
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* sideEffectCount */
        start local 2 // int sideEffectCount
         2: .line 453
            getstatic org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.$assertionsDisabled:Z
            ifne 3
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 0 /* this */
            invokedynamic apply(Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;)Lorg/graalvm/compiler/graph/iterators/NodePredicate;
              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:
                  (Lorg/graalvm/compiler/graph/Node;)Z
                  org/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker.lambda$0(Lorg/graalvm/compiler/graph/Node;)Z (7)
                  (Lorg/graalvm/compiler/graph/Node;)Z
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Lorg/graalvm/compiler/graph/iterators/NodePredicate;)Lorg/graalvm/compiler/graph/iterators/FilteredNodeIterable;
            invokevirtual org.graalvm.compiler.graph.iterators.FilteredNodeIterable.count:()I
            dup
            istore 2 /* sideEffectCount */
            ifge 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 454
      StackMap locals: int
      StackMap stack:
            new org.graalvm.compiler.loop.phases.ConvertDeoptimizeToGuardPhase
            dup
            invokespecial org.graalvm.compiler.loop.phases.ConvertDeoptimizeToGuardPhase.<init>:()V
            aload 1 /* graph */
            aconst_null
            invokevirtual org.graalvm.compiler.loop.phases.ConvertDeoptimizeToGuardPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
         4: .line 455
            getstatic org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.$assertionsDisabled:Z
            ifne 5
            iload 2 /* sideEffectCount */
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
            aload 0 /* this */
            invokedynamic apply(Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;)Lorg/graalvm/compiler/graph/iterators/NodePredicate;
              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:
                  (Lorg/graalvm/compiler/graph/Node;)Z
                  org/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker.lambda$1(Lorg/graalvm/compiler/graph/Node;)Z (7)
                  (Lorg/graalvm/compiler/graph/Node;)Z
            invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Lorg/graalvm/compiler/graph/iterators/NodePredicate;)Lorg/graalvm/compiler/graph/iterators/FilteredNodeIterable;
            invokevirtual org.graalvm.compiler.graph.iterators.FilteredNodeIterable.count:()I
            if_icmpeq 5
            new java.lang.AssertionError
            dup
            ldc "deleted side effecting node"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         5: .line 457
      StackMap locals:
      StackMap stack:
            new org.graalvm.compiler.phases.common.DeadCodeEliminationPhase
            dup
            getstatic org.graalvm.compiler.phases.common.DeadCodeEliminationPhase$Optionality.Required:Lorg/graalvm/compiler/phases/common/DeadCodeEliminationPhase$Optionality;
            invokespecial org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.<init>:(Lorg/graalvm/compiler/phases/common/DeadCodeEliminationPhase$Optionality;)V
            aload 1 /* graph */
            invokevirtual org.graalvm.compiler.phases.common.DeadCodeEliminationPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
        end local 2 // int sideEffectCount
         6: .line 464
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0    7     1            graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
            2    6     2  sideEffectCount  I
    MethodParameters:
       Name  Flags
      graph  

  private boolean hasSideEffect(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.graph.Node node
         0: .line 475
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.StateSplit
            ifeq 12
         1: .line 476
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.StateSplit
            invokeinterface org.graalvm.compiler.nodes.StateSplit.hasSideEffect:()Z
            ifeq 12
         2: .line 477
            aload 1 /* node */
            instanceof org.graalvm.compiler.nodes.Invoke
            ifeq 11
         3: .line 478
            aload 1 /* node */
            checkcast org.graalvm.compiler.nodes.Invoke
            invokeinterface org.graalvm.compiler.nodes.Invoke.callTarget:()Lorg/graalvm/compiler/nodes/CallTargetNode;
            astore 2 /* callTarget */
        start local 2 // org.graalvm.compiler.nodes.CallTargetNode callTarget
         4: .line 479
            aload 2 /* callTarget */
            instanceof org.graalvm.compiler.nodes.java.MethodCallTargetNode
            ifeq 11
         5: .line 480
            aload 2 /* callTarget */
            checkcast org.graalvm.compiler.nodes.java.MethodCallTargetNode
            invokevirtual org.graalvm.compiler.nodes.java.MethodCallTargetNode.targetMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 3 /* targetMethod */
        start local 3 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
         6: .line 481
            aload 3 /* targetMethod */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.isConstructor:()Z
            ifeq 11
         7: .line 482
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            getfield org.graalvm.compiler.replacements.ReplacementsImpl.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            ldc Ljava/lang/Throwable;
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 4 /* throwableType */
        start local 4 // jdk.vm.ci.meta.ResolvedJavaType throwableType
         8: .line 483
            aload 4 /* throwableType */
            aload 3 /* targetMethod */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isAssignableFrom:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 9
            iconst_0
            goto 10
      StackMap locals: org.graalvm.compiler.nodes.CallTargetNode jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack:
         9: iconst_1
      StackMap locals:
      StackMap stack: int
        10: ireturn
        end local 4 // jdk.vm.ci.meta.ResolvedJavaType throwableType
        end local 3 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
        end local 2 // org.graalvm.compiler.nodes.CallTargetNode callTarget
        11: .line 488
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        12: .line 492
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // org.graalvm.compiler.graph.Node node
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0   13     1           node  Lorg/graalvm/compiler/graph/Node;
            4   11     2     callTarget  Lorg/graalvm/compiler/nodes/CallTargetNode;
            6   11     3   targetMethod  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            8   11     4  throwableType  Ljdk/vm/ci/meta/ResolvedJavaType;
    MethodParameters:
      Name  Flags
      node  

  protected org.graalvm.compiler.nodes.StructuredGraph buildInitialGraph(org.graalvm.compiler.debug.DebugContext, org.graalvm.compiler.bytecode.BytecodeProvider, jdk.vm.ci.meta.ResolvedJavaMethod, java.lang.Object[], boolean, org.graalvm.compiler.graph.NodeSourcePosition, org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Lorg/graalvm/compiler/bytecode/BytecodeProvider;Ljdk/vm/ci/meta/ResolvedJavaMethod;[Ljava/lang/Object;ZLorg/graalvm/compiler/graph/NodeSourcePosition;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;)Lorg/graalvm/compiler/nodes/StructuredGraph;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=19, args_size=8
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.debug.DebugContext debug
        start local 2 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
        start local 3 // jdk.vm.ci.meta.ResolvedJavaMethod methodToParse
        start local 4 // java.lang.Object[] args
        start local 5 // boolean trackNodeSourcePosition
        start local 6 // org.graalvm.compiler.graph.NodeSourcePosition replaceePosition
        start local 7 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext context
         0: .line 527
            new org.graalvm.compiler.nodes.StructuredGraph$Builder
            dup
            aload 1 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            aload 1 /* debug */
            invokespecial org.graalvm.compiler.nodes.StructuredGraph$Builder.<init>:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;)V
         1: .line 528
            aload 3 /* methodToParse */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$Builder.method:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
         2: .line 529
            iload 5 /* trackNodeSourcePosition */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$Builder.trackNodeSourcePosition:(Z)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
         3: .line 530
            aload 6 /* replaceePosition */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$Builder.callerContext:(Lorg/graalvm/compiler/graph/NodeSourcePosition;)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
         4: .line 531
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$Builder.setIsSubstitution:(Z)Lorg/graalvm/compiler/nodes/StructuredGraph$Builder;
         5: .line 532
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph$Builder.build:()Lorg/graalvm/compiler/nodes/StructuredGraph;
         6: .line 527
            astore 8 /* graph */
        start local 8 // org.graalvm.compiler.nodes.StructuredGraph graph
         7: .line 537
            aload 8 /* graph */
            invokevirtual org.graalvm.compiler.nodes.StructuredGraph.disableUnsafeAccessTracking:()V
         8: .line 539
            aconst_null
            astore 9
            aconst_null
            astore 10
         9: aload 1 /* debug */
            ldc "buildInitialGraph"
            aload 8 /* graph */
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 11 /* s */
        start local 11 // org.graalvm.compiler.debug.DebugContext$Scope s
        10: .line 540
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            getfield org.graalvm.compiler.replacements.ReplacementsImpl.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokevirtual org.graalvm.compiler.phases.util.Providers.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            astore 12 /* metaAccess */
        start local 12 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        11: .line 542
            new org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            getfield org.graalvm.compiler.replacements.ReplacementsImpl.graphBuilderPlugins:Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;
            invokespecial org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;)V
            astore 13 /* plugins */
        start local 13 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins plugins
        12: .line 543
            aload 13 /* plugins */
            invokestatic org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.getSnippetDefault:(Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;)Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
            astore 14 /* config */
        start local 14 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration config
        13: .line 544
            aload 4 /* args */
            ifnull 15
        14: .line 545
            aload 13 /* plugins */
            new org.graalvm.compiler.replacements.ConstantBindingParameterPlugin
            dup
            aload 4 /* args */
            aload 12 /* metaAccess */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            getfield org.graalvm.compiler.replacements.ReplacementsImpl.snippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            invokespecial org.graalvm.compiler.replacements.ConstantBindingParameterPlugin.<init>:([Ljava/lang/Object;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins.prependParameterPlugin:(Lorg/graalvm/compiler/nodes/graphbuilderconf/ParameterPlugin;)V
        15: .line 548
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider jdk.vm.ci.meta.ResolvedJavaMethod java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext org.graalvm.compiler.nodes.StructuredGraph java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration
      StackMap stack:
            aconst_null
            astore 15 /* initialIntrinsicContext */
        start local 15 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext initialIntrinsicContext
        16: .line 549
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc Lorg/graalvm/compiler/api/replacements/Snippet;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.graalvm.compiler.api.replacements.Snippet
            astore 16 /* snippetAnnotation */
        start local 16 // org.graalvm.compiler.api.replacements.Snippet snippetAnnotation
        17: .line 550
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc Lorg/graalvm/compiler/api/replacements/MethodSubstitution;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.graalvm.compiler.api.replacements.MethodSubstitution
            astore 17 /* methodAnnotation */
        start local 17 // org.graalvm.compiler.api.replacements.MethodSubstitution methodAnnotation
        18: .line 551
            aload 17 /* methodAnnotation */
            ifnonnull 21
            aload 16 /* snippetAnnotation */
            ifnonnull 21
        19: .line 553
            new org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker$EncodedIntrinsicContext
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.substitutedMethod:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 2 /* bytecodeProvider */
            aload 7 /* context */
            iconst_0
            invokespecial org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker$EncodedIntrinsicContext.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/bytecode/BytecodeProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;Z)V
            astore 15 /* initialIntrinsicContext */
        20: .line 554
            goto 28
        21: .line 556
      StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext org.graalvm.compiler.api.replacements.Snippet org.graalvm.compiler.api.replacements.MethodSubstitution
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.substitutedMethod:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ifnull 22
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.substitutedMethod:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            goto 23
      StackMap locals:
      StackMap stack:
        22: aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
      StackMap locals:
      StackMap stack: jdk.vm.ci.meta.ResolvedJavaMethod
        23: astore 18 /* original */
        start local 18 // jdk.vm.ci.meta.ResolvedJavaMethod original
        24: .line 557
            new org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker$EncodedIntrinsicContext
            dup
            aload 18 /* original */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 2 /* bytecodeProvider */
            aload 7 /* context */
        25: .line 558
            aload 16 /* snippetAnnotation */
            ifnull 26
            aload 16 /* snippetAnnotation */
            invokeinterface org.graalvm.compiler.api.replacements.Snippet.allowPartialIntrinsicArgumentMismatch:()Z
            goto 27
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider jdk.vm.ci.meta.ResolvedJavaMethod java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext org.graalvm.compiler.nodes.StructuredGraph java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext org.graalvm.compiler.api.replacements.Snippet org.graalvm.compiler.api.replacements.MethodSubstitution jdk.vm.ci.meta.ResolvedJavaMethod
      StackMap stack: new 24 new 24 jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.bytecode.BytecodeProvider org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext
        26: iconst_1
        27: .line 557
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider jdk.vm.ci.meta.ResolvedJavaMethod java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext org.graalvm.compiler.nodes.StructuredGraph java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope jdk.vm.ci.meta.MetaAccessProvider org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext org.graalvm.compiler.api.replacements.Snippet org.graalvm.compiler.api.replacements.MethodSubstitution jdk.vm.ci.meta.ResolvedJavaMethod
      StackMap stack: new 24 new 24 jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.bytecode.BytecodeProvider org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext int
            invokespecial org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker$EncodedIntrinsicContext.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/bytecode/BytecodeProvider;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;Z)V
            astore 15 /* initialIntrinsicContext */
        end local 18 // jdk.vm.ci.meta.ResolvedJavaMethod original
        28: .line 561
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            getfield org.graalvm.compiler.replacements.ReplacementsImpl.providers:Lorg/graalvm/compiler/phases/util/Providers;
            aload 14 /* config */
            getstatic org.graalvm.compiler.phases.OptimisticOptimizations.NONE:Lorg/graalvm/compiler/phases/OptimisticOptimizations;
            aload 15 /* initialIntrinsicContext */
            invokevirtual org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.createGraphBuilder:(Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;Lorg/graalvm/compiler/phases/OptimisticOptimizations;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext;)Lorg/graalvm/compiler/java/GraphBuilderPhase$Instance;
            aload 8 /* graph */
            invokevirtual org.graalvm.compiler.java.GraphBuilderPhase$Instance.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
        29: .line 563
            new org.graalvm.compiler.phases.common.CanonicalizerPhase
            dup
            invokespecial org.graalvm.compiler.phases.common.CanonicalizerPhase.<init>:()V
            aload 8 /* graph */
            new org.graalvm.compiler.phases.tiers.PhaseContext
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.replacements:Lorg/graalvm/compiler/replacements/ReplacementsImpl;
            getfield org.graalvm.compiler.replacements.ReplacementsImpl.providers:Lorg/graalvm/compiler/phases/util/Providers;
            invokespecial org.graalvm.compiler.phases.tiers.PhaseContext.<init>:(Lorg/graalvm/compiler/nodes/spi/CoreProviders;)V
            invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
        end local 17 // org.graalvm.compiler.api.replacements.MethodSubstitution methodAnnotation
        end local 16 // org.graalvm.compiler.api.replacements.Snippet snippetAnnotation
        end local 15 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext initialIntrinsicContext
        end local 14 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration config
        end local 13 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins plugins
        end local 12 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        30: .line 564
            aload 11 /* s */
            ifnull 38
            aload 11 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
            goto 38
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider jdk.vm.ci.meta.ResolvedJavaMethod java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext org.graalvm.compiler.nodes.StructuredGraph java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack: java.lang.Throwable
        31: astore 9
            aload 11 /* s */
            ifnull 32
            aload 11 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 11 // org.graalvm.compiler.debug.DebugContext$Scope s
      StackMap locals:
      StackMap stack:
        32: aload 9
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        33: astore 10
            aload 9
            ifnonnull 34
            aload 10
            astore 9
            goto 35
      StackMap locals:
      StackMap stack:
        34: aload 9
            aload 10
            if_acmpeq 35
            aload 9
            aload 10
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        35: aload 9
            athrow
      StackMap locals: org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.bytecode.BytecodeProvider jdk.vm.ci.meta.ResolvedJavaMethod java.lang.Object[] int org.graalvm.compiler.graph.NodeSourcePosition org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext org.graalvm.compiler.nodes.StructuredGraph
      StackMap stack: java.lang.Throwable
        36: astore 9 /* e */
        start local 9 // java.lang.Throwable e
        37: .line 565
            aload 1 /* debug */
            aload 9 /* e */
            invokevirtual org.graalvm.compiler.debug.DebugContext.handle:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 9 // java.lang.Throwable e
        38: .line 567
      StackMap locals:
      StackMap stack:
            aload 8 /* graph */
            areturn
        end local 8 // org.graalvm.compiler.nodes.StructuredGraph graph
        end local 7 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext context
        end local 6 // org.graalvm.compiler.graph.NodeSourcePosition replaceePosition
        end local 5 // boolean trackNodeSourcePosition
        end local 4 // java.lang.Object[] args
        end local 3 // jdk.vm.ci.meta.ResolvedJavaMethod methodToParse
        end local 2 // org.graalvm.compiler.bytecode.BytecodeProvider bytecodeProvider
        end local 1 // org.graalvm.compiler.debug.DebugContext debug
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0   39     0                     this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0   39     1                    debug  Lorg/graalvm/compiler/debug/DebugContext;
            0   39     2         bytecodeProvider  Lorg/graalvm/compiler/bytecode/BytecodeProvider;
            0   39     3            methodToParse  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0   39     4                     args  [Ljava/lang/Object;
            0   39     5  trackNodeSourcePosition  Z
            0   39     6         replaceePosition  Lorg/graalvm/compiler/graph/NodeSourcePosition;
            0   39     7                  context  Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext$CompilationContext;
            7   39     8                    graph  Lorg/graalvm/compiler/nodes/StructuredGraph;
           10   32    11                        s  Lorg/graalvm/compiler/debug/DebugContext$Scope;
           11   30    12               metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
           12   30    13                  plugins  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration$Plugins;
           13   30    14                   config  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
           16   30    15  initialIntrinsicContext  Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext;
           17   30    16        snippetAnnotation  Lorg/graalvm/compiler/api/replacements/Snippet;
           18   30    17         methodAnnotation  Lorg/graalvm/compiler/api/replacements/MethodSubstitution;
           24   28    18                 original  Ljdk/vm/ci/meta/ResolvedJavaMethod;
           37   38     9                        e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
          10    30      31  any
           9    33      33  any
           8    36      36  Class java.lang.Throwable
    MethodParameters:
                         Name  Flags
      debug                    
      bytecodeProvider         
      methodToParse            final
      args                     
      trackNodeSourcePosition  
      replaceePosition         
      context                  

  protected org.graalvm.compiler.java.GraphBuilderPhase$Instance createGraphBuilder(org.graalvm.compiler.phases.util.Providers, org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration, org.graalvm.compiler.phases.OptimisticOptimizations, org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext);
    descriptor: (Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;Lorg/graalvm/compiler/phases/OptimisticOptimizations;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext;)Lorg/graalvm/compiler/java/GraphBuilderPhase$Instance;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.phases.util.Providers providers
        start local 2 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration graphBuilderConfig
        start local 3 // org.graalvm.compiler.phases.OptimisticOptimizations optimisticOpts
        start local 4 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext initialIntrinsicContext
         0: .line 571
            new org.graalvm.compiler.java.GraphBuilderPhase$Instance
            dup
            aload 1 /* providers */
            aload 2 /* graphBuilderConfig */
            aload 3 /* optimisticOpts */
            aload 4 /* initialIntrinsicContext */
            invokespecial org.graalvm.compiler.java.GraphBuilderPhase$Instance.<init>:(Lorg/graalvm/compiler/nodes/spi/CoreProviders;Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;Lorg/graalvm/compiler/phases/OptimisticOptimizations;Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext;)V
            areturn
        end local 4 // org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext initialIntrinsicContext
        end local 3 // org.graalvm.compiler.phases.OptimisticOptimizations optimisticOpts
        end local 2 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration graphBuilderConfig
        end local 1 // org.graalvm.compiler.phases.util.Providers providers
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    1     0                     this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0    1     1                providers  Lorg/graalvm/compiler/phases/util/Providers;
            0    1     2       graphBuilderConfig  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
            0    1     3           optimisticOpts  Lorg/graalvm/compiler/phases/OptimisticOptimizations;
            0    1     4  initialIntrinsicContext  Lorg/graalvm/compiler/nodes/graphbuilderconf/IntrinsicContext;
    MethodParameters:
                         Name  Flags
      providers                
      graphBuilderConfig       
      optimisticOpts           
      initialIntrinsicContext  

  private boolean lambda$0(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.graph.Node e
         0: .line 453
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.hasSideEffect:(Lorg/graalvm/compiler/graph/Node;)Z
            ireturn
        end local 1 // org.graalvm.compiler.graph.Node e
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0    1     1     e  Lorg/graalvm/compiler/graph/Node;

  private boolean lambda$1(org.graalvm.compiler.graph.Node);
    descriptor: (Lorg/graalvm/compiler/graph/Node;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
        start local 1 // org.graalvm.compiler.graph.Node e
         0: .line 455
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker.hasSideEffect:(Lorg/graalvm/compiler/graph/Node;)Z
            ireturn
        end local 1 // org.graalvm.compiler.graph.Node e
        end local 0 // org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/ReplacementsImpl$GraphMaker;
            0    1     1     e  Lorg/graalvm/compiler/graph/Node;
}
SourceFile: "ReplacementsImpl.java"
NestHost: org.graalvm.compiler.replacements.ReplacementsImpl
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext
  public Instance = org.graalvm.compiler.java.GraphBuilderPhase$Instance of org.graalvm.compiler.java.GraphBuilderPhase
  public Builder = org.graalvm.compiler.nodes.StructuredGraph$Builder of org.graalvm.compiler.nodes.StructuredGraph
  public Plugins = org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration$Plugins of org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration
  public final CompilationContext = org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext$CompilationContext of org.graalvm.compiler.nodes.graphbuilderconf.IntrinsicContext
  public final Optionality = org.graalvm.compiler.phases.common.DeadCodeEliminationPhase$Optionality of org.graalvm.compiler.phases.common.DeadCodeEliminationPhase
  public GraphMaker = org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker of org.graalvm.compiler.replacements.ReplacementsImpl
  EncodedIntrinsicContext = org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker$EncodedIntrinsicContext of org.graalvm.compiler.replacements.ReplacementsImpl$GraphMaker