public class org.graalvm.compiler.core.match.MatchRuleRegistry
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.core.match.MatchRuleRegistry
  super_class: java.lang.Object
{
  private static final jdk.internal.vm.compiler.collections.EconomicMap<java.lang.Class<? extends org.graalvm.compiler.core.gen.NodeMatchRules>, jdk.internal.vm.compiler.collections.EconomicMap<java.lang.Class<? extends org.graalvm.compiler.graph.Node>, java.util.List<org.graalvm.compiler.core.match.MatchStatement>>> registry;
    descriptor: Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;>;

  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 45
            ldc Lorg/graalvm/compiler/core/match/MatchRuleRegistry;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.graalvm.compiler.core.match.MatchRuleRegistry.$assertionsDisabled:Z
         3: .line 72
            getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            putstatic org.graalvm.compiler.core.match.MatchRuleRegistry.registry:Ljdk/internal/vm/compiler/collections/EconomicMap;
            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 // org.graalvm.compiler.core.match.MatchRuleRegistry this
         0: .line 45
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.graalvm.compiler.core.match.MatchRuleRegistry this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/match/MatchRuleRegistry;

  public static org.graalvm.compiler.graph.Position[] findPositions(org.graalvm.compiler.graph.NodeClass<? extends org.graalvm.compiler.graph.Node>, java.lang.String[]);
    descriptor: (Lorg/graalvm/compiler/graph/NodeClass;[Ljava/lang/String;)[Lorg/graalvm/compiler/graph/Position;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=6, args_size=2
        start local 0 // org.graalvm.compiler.graph.NodeClass nodeClass
        start local 1 // java.lang.String[] names
         0: .line 57
            aload 1 /* names */
            arraylength
            anewarray org.graalvm.compiler.graph.Position
            astore 2 /* result */
        start local 2 // org.graalvm.compiler.graph.Position[] result
         1: .line 58
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 13
         3: .line 59
      StackMap locals: org.graalvm.compiler.graph.Position[] int
      StackMap stack:
            aload 0 /* nodeClass */
            invokevirtual org.graalvm.compiler.graph.NodeClass.getInputEdges:()Lorg/graalvm/compiler/graph/Edges;
            astore 4 /* edges */
        start local 4 // org.graalvm.compiler.graph.Edges edges
         4: .line 60
            iconst_0
            istore 5 /* e */
        start local 5 // int e
         5: goto 9
         6: .line 61
      StackMap locals: org.graalvm.compiler.graph.Edges int
      StackMap stack:
            aload 1 /* names */
            iload 3 /* i */
            aaload
            aload 4 /* edges */
            iload 5 /* e */
            invokevirtual org.graalvm.compiler.graph.Edges.getName:(I)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 62
            aload 2 /* result */
            iload 3 /* i */
            new org.graalvm.compiler.graph.Position
            dup
            aload 4 /* edges */
            iload 5 /* e */
            iconst_m1
            invokespecial org.graalvm.compiler.graph.Position.<init>:(Lorg/graalvm/compiler/graph/Edges;II)V
            aastore
         8: .line 60
      StackMap locals:
      StackMap stack:
            iinc 5 /* e */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* e */
            aload 4 /* edges */
            invokevirtual org.graalvm.compiler.graph.Edges.getDirectCount:()I
            if_icmplt 6
        end local 5 // int e
        10: .line 65
            aload 2 /* result */
            iload 3 /* i */
            aaload
            ifnonnull 12
        11: .line 66
            new org.graalvm.compiler.debug.GraalError
            dup
            ldc "unknown field \"%s\" in class %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* names */
            iload 3 /* i */
            aaload
            aastore
            dup
            iconst_1
            aload 0 /* nodeClass */
            aastore
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 4 // org.graalvm.compiler.graph.Edges edges
        12: .line 58
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            aload 1 /* names */
            arraylength
            if_icmplt 3
        end local 3 // int i
        14: .line 69
            aload 2 /* result */
            areturn
        end local 2 // org.graalvm.compiler.graph.Position[] result
        end local 1 // java.lang.String[] names
        end local 0 // org.graalvm.compiler.graph.NodeClass nodeClass
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0  nodeClass  Lorg/graalvm/compiler/graph/NodeClass<+Lorg/graalvm/compiler/graph/Node;>;
            0   15     1      names  [Ljava/lang/String;
            1   15     2     result  [Lorg/graalvm/compiler/graph/Position;
            2   14     3          i  I
            4   12     4      edges  Lorg/graalvm/compiler/graph/Edges;
            5   10     5          e  I
    Signature: (Lorg/graalvm/compiler/graph/NodeClass<+Lorg/graalvm/compiler/graph/Node;>;[Ljava/lang/String;)[Lorg/graalvm/compiler/graph/Position;
    MethodParameters:
           Name  Flags
      nodeClass  
      names      

  public static synchronized jdk.internal.vm.compiler.collections.EconomicMap<java.lang.Class<? extends org.graalvm.compiler.graph.Node>, java.util.List<org.graalvm.compiler.core.match.MatchStatement>> lookup(java.lang.Class<? extends org.graalvm.compiler.core.gen.NodeMatchRules>, org.graalvm.compiler.options.OptionValues, org.graalvm.compiler.debug.DebugContext);
    descriptor: (Ljava/lang/Class;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;)Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=11, args_size=3
        start local 0 // java.lang.Class theClass
        start local 1 // org.graalvm.compiler.options.OptionValues options
        start local 2 // org.graalvm.compiler.debug.DebugContext debug
         0: .line 83
            getstatic org.graalvm.compiler.core.match.MatchRuleRegistry.registry:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 0 /* theClass */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.internal.vm.compiler.collections.EconomicMap
            astore 3 /* result */
        start local 3 // jdk.internal.vm.compiler.collections.EconomicMap result
         1: .line 85
            aload 3 /* result */
            ifnonnull 24
         2: .line 86
            aload 0 /* theClass */
            invokestatic org.graalvm.compiler.core.match.MatchRuleRegistry.createRules:(Ljava/lang/Class;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            astore 4 /* rules */
        start local 4 // jdk.internal.vm.compiler.collections.EconomicMap rules
         3: .line 87
            getstatic org.graalvm.compiler.core.match.MatchRuleRegistry.registry:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 0 /* theClass */
            aload 4 /* rules */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 88
            getstatic org.graalvm.compiler.core.match.MatchRuleRegistry.$assertionsDisabled:Z
            ifne 5
            getstatic org.graalvm.compiler.core.match.MatchRuleRegistry.registry:Ljdk/internal/vm/compiler/collections/EconomicMap;
            aload 0 /* theClass */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 4 /* rules */
            if_acmpeq 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 89
      StackMap locals: jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.EconomicMap
      StackMap stack:
            aload 4 /* rules */
            astore 3 /* result */
         6: .line 91
            getstatic org.graalvm.compiler.debug.DebugOptions.LogVerbose:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            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 24
         7: .line 92
            aconst_null
            astore 5
            aconst_null
            astore 6
         8: aload 2 /* debug */
            ldc "MatchComplexExpressions"
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 7 /* s */
        start local 7 // org.graalvm.compiler.debug.DebugContext$Scope s
         9: .line 93
            aload 2 /* debug */
            ldc "Match rules for %s"
            aload 0 /* theClass */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
        10: .line 94
            aload 3 /* result */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.getEntries:()Ljdk/internal/vm/compiler/collections/MapCursor;
            astore 8 /* cursor */
        start local 8 // jdk.internal.vm.compiler.collections.MapCursor cursor
        11: .line 95
            goto 17
        12: .line 96
      StackMap locals: java.lang.Class org.graalvm.compiler.options.OptionValues org.graalvm.compiler.debug.DebugContext jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.EconomicMap java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope jdk.internal.vm.compiler.collections.MapCursor
      StackMap stack:
            aload 2 /* debug */
            ldc "  For node class: %s"
            aload 8 /* cursor */
            invokeinterface jdk.internal.vm.compiler.collections.MapCursor.getKey:()Ljava/lang/Object;
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
        13: .line 97
            aload 8 /* cursor */
            invokeinterface jdk.internal.vm.compiler.collections.MapCursor.getValue:()Ljava/lang/Object;
            checkcast java.util.List
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 16
      StackMap locals: java.lang.Class org.graalvm.compiler.options.OptionValues org.graalvm.compiler.debug.DebugContext jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.EconomicMap java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope jdk.internal.vm.compiler.collections.MapCursor top java.util.Iterator
      StackMap stack:
        14: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.match.MatchStatement
            astore 9 /* statement */
        start local 9 // org.graalvm.compiler.core.match.MatchStatement statement
        15: .line 98
            aload 2 /* debug */
            ldc "    %s"
            aload 9 /* statement */
            invokevirtual org.graalvm.compiler.core.match.MatchStatement.getPattern:()Lorg/graalvm/compiler/core/match/MatchPattern;
            invokevirtual org.graalvm.compiler.debug.DebugContext.log:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 9 // org.graalvm.compiler.core.match.MatchStatement statement
        16: .line 97
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        17: .line 95
      StackMap locals: java.lang.Class org.graalvm.compiler.options.OptionValues org.graalvm.compiler.debug.DebugContext jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.EconomicMap java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope jdk.internal.vm.compiler.collections.MapCursor
      StackMap stack:
            aload 8 /* cursor */
            invokeinterface jdk.internal.vm.compiler.collections.MapCursor.advance:()Z
            ifne 12
        end local 8 // jdk.internal.vm.compiler.collections.MapCursor cursor
        18: .line 101
            aload 7 /* s */
            ifnull 24
            aload 7 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
            goto 24
      StackMap locals: java.lang.Class org.graalvm.compiler.options.OptionValues org.graalvm.compiler.debug.DebugContext jdk.internal.vm.compiler.collections.EconomicMap jdk.internal.vm.compiler.collections.EconomicMap java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack: java.lang.Throwable
        19: astore 5
            aload 7 /* s */
            ifnull 20
            aload 7 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugContext$Scope s
      StackMap locals:
      StackMap stack:
        20: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        21: astore 6
            aload 5
            ifnonnull 22
            aload 6
            astore 5
            goto 23
      StackMap locals:
      StackMap stack:
        22: aload 5
            aload 6
            if_acmpeq 23
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        23: aload 5
            athrow
        end local 4 // jdk.internal.vm.compiler.collections.EconomicMap rules
        24: .line 105
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.size:()I
            ifne 26
        25: .line 106
            aconst_null
            areturn
        26: .line 108
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // jdk.internal.vm.compiler.collections.EconomicMap result
        end local 2 // org.graalvm.compiler.debug.DebugContext debug
        end local 1 // org.graalvm.compiler.options.OptionValues options
        end local 0 // java.lang.Class theClass
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0   theClass  Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;
            0   27     1    options  Lorg/graalvm/compiler/options/OptionValues;
            0   27     2      debug  Lorg/graalvm/compiler/debug/DebugContext;
            1   27     3     result  Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;
            3   24     4      rules  Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;
            9   20     7          s  Lorg/graalvm/compiler/debug/DebugContext$Scope;
           11   18     8     cursor  Ljdk/internal/vm/compiler/collections/MapCursor<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;
           15   16     9  statement  Lorg/graalvm/compiler/core/match/MatchStatement;
      Exception table:
        from    to  target  type
           9    18      19  any
           8    21      21  any
    Signature: (Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/debug/DebugContext;)Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;
    MethodParameters:
          Name  Flags
      theClass  
      options   
      debug     

  public static jdk.internal.vm.compiler.collections.EconomicMap<java.lang.Class<? extends org.graalvm.compiler.graph.Node>, java.util.List<org.graalvm.compiler.core.match.MatchStatement>> createRules(java.lang.Class<? extends org.graalvm.compiler.core.gen.NodeMatchRules>);
    descriptor: (Ljava/lang/Class;)Ljdk/internal/vm/compiler/collections/EconomicMap;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=11, args_size=1
        start local 0 // java.lang.Class theClass
         0: .line 117
            getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            astore 1 /* matchSets */
        start local 1 // jdk.internal.vm.compiler.collections.EconomicMap matchSets
         1: .line 118
            ldc Lorg/graalvm/compiler/core/match/MatchStatementSet;
            invokestatic org.graalvm.compiler.serviceprovider.GraalServices.load:(Ljava/lang/Class;)Ljava/lang/Iterable;
            astore 2 /* sl */
        start local 2 // java.lang.Iterable sl
         2: .line 119
            aload 2 /* sl */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: java.lang.Class jdk.internal.vm.compiler.collections.EconomicMap java.lang.Iterable top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.match.MatchStatementSet
            astore 3 /* rules */
        start local 3 // org.graalvm.compiler.core.match.MatchStatementSet rules
         4: .line 120
            aload 1 /* matchSets */
            aload 3 /* rules */
            invokeinterface org.graalvm.compiler.core.match.MatchStatementSet.forClass:()Ljava/lang/Class;
            aload 3 /* rules */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 3 // org.graalvm.compiler.core.match.MatchStatementSet rules
         5: .line 119
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 125
            getstatic jdk.internal.vm.compiler.collections.Equivalence.IDENTITY:Ljdk/internal/vm/compiler/collections/Equivalence;
            invokestatic jdk.internal.vm.compiler.collections.EconomicMap.create:(Ljdk/internal/vm/compiler/collections/Equivalence;)Ljdk/internal/vm/compiler/collections/EconomicMap;
            astore 3 /* rules */
        start local 3 // jdk.internal.vm.compiler.collections.EconomicMap rules
         7: .line 126
            aload 0 /* theClass */
            astore 4 /* currentClass */
        start local 4 // java.lang.Class currentClass
         8: .line 128
      StackMap locals: java.lang.Class jdk.internal.vm.compiler.collections.EconomicMap java.lang.Iterable jdk.internal.vm.compiler.collections.EconomicMap java.lang.Class
      StackMap stack:
            aload 1 /* matchSets */
            aload 4 /* currentClass */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.match.MatchStatementSet
            astore 5 /* matchSet */
        start local 5 // org.graalvm.compiler.core.match.MatchStatementSet matchSet
         9: .line 129
            aload 5 /* matchSet */
            ifnull 20
        10: .line 130
            aload 5 /* matchSet */
            invokeinterface org.graalvm.compiler.core.match.MatchStatementSet.statements:()Ljava/util/List;
            astore 6 /* statements */
        start local 6 // java.util.List statements
        11: .line 131
            aload 6 /* statements */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 8
            goto 19
      StackMap locals: java.lang.Class jdk.internal.vm.compiler.collections.EconomicMap java.lang.Iterable jdk.internal.vm.compiler.collections.EconomicMap java.lang.Class org.graalvm.compiler.core.match.MatchStatementSet java.util.List top java.util.Iterator
      StackMap stack:
        12: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.match.MatchStatement
            astore 7 /* statement */
        start local 7 // org.graalvm.compiler.core.match.MatchStatement statement
        13: .line 132
            aload 7 /* statement */
            invokevirtual org.graalvm.compiler.core.match.MatchStatement.getPattern:()Lorg/graalvm/compiler/core/match/MatchPattern;
            invokevirtual org.graalvm.compiler.core.match.MatchPattern.nodeClass:()Ljava/lang/Class;
            astore 9 /* nodeClass */
        start local 9 // java.lang.Class nodeClass
        14: .line 133
            aload 3 /* rules */
            aload 9 /* nodeClass */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 10 /* current */
        start local 10 // java.util.List current
        15: .line 134
            aload 10 /* current */
            ifnonnull 18
        16: .line 135
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* current */
        17: .line 136
            aload 3 /* rules */
            aload 9 /* nodeClass */
            aload 10 /* current */
            invokeinterface jdk.internal.vm.compiler.collections.EconomicMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 138
      StackMap locals: java.lang.Class jdk.internal.vm.compiler.collections.EconomicMap java.lang.Iterable jdk.internal.vm.compiler.collections.EconomicMap java.lang.Class org.graalvm.compiler.core.match.MatchStatementSet java.util.List org.graalvm.compiler.core.match.MatchStatement java.util.Iterator java.lang.Class java.util.List
      StackMap stack:
            aload 10 /* current */
            aload 7 /* statement */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 10 // java.util.List current
        end local 9 // java.lang.Class nodeClass
        end local 7 // org.graalvm.compiler.core.match.MatchStatement statement
        19: .line 131
      StackMap locals: java.lang.Class jdk.internal.vm.compiler.collections.EconomicMap java.lang.Iterable jdk.internal.vm.compiler.collections.EconomicMap java.lang.Class org.graalvm.compiler.core.match.MatchStatementSet java.util.List top java.util.Iterator
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 6 // java.util.List statements
        20: .line 141
      StackMap locals: java.lang.Class jdk.internal.vm.compiler.collections.EconomicMap java.lang.Iterable jdk.internal.vm.compiler.collections.EconomicMap java.lang.Class org.graalvm.compiler.core.match.MatchStatementSet
      StackMap stack:
            aload 4 /* currentClass */
            invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
            astore 4 /* currentClass */
        end local 5 // org.graalvm.compiler.core.match.MatchStatementSet matchSet
        21: .line 142
            aload 4 /* currentClass */
            ldc Lorg/graalvm/compiler/core/gen/NodeMatchRules;
            if_acmpne 8
        22: .line 143
            aload 3 /* rules */
            areturn
        end local 4 // java.lang.Class currentClass
        end local 3 // jdk.internal.vm.compiler.collections.EconomicMap rules
        end local 2 // java.lang.Iterable sl
        end local 1 // jdk.internal.vm.compiler.collections.EconomicMap matchSets
        end local 0 // java.lang.Class theClass
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   23     0      theClass  Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;
            1   23     1     matchSets  Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;Lorg/graalvm/compiler/core/match/MatchStatementSet;>;
            2   23     2            sl  Ljava/lang/Iterable<Lorg/graalvm/compiler/core/match/MatchStatementSet;>;
            4    5     3         rules  Lorg/graalvm/compiler/core/match/MatchStatementSet;
            7   23     3         rules  Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;
            8   23     4  currentClass  Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;
            9   21     5      matchSet  Lorg/graalvm/compiler/core/match/MatchStatementSet;
           11   20     6    statements  Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;
           13   19     7     statement  Lorg/graalvm/compiler/core/match/MatchStatement;
           14   19     9     nodeClass  Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;
           15   19    10       current  Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;
    Signature: (Ljava/lang/Class<+Lorg/graalvm/compiler/core/gen/NodeMatchRules;>;)Ljdk/internal/vm/compiler/collections/EconomicMap<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Ljava/util/List<Lorg/graalvm/compiler/core/match/MatchStatement;>;>;
    MethodParameters:
          Name  Flags
      theClass  
}
SourceFile: "MatchRuleRegistry.java"
InnerClasses:
  public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext