public final class com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation implements com.oracle.truffle.llvm.runtime.types.symbols.LocalVariableDebugInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
  super_class: java.lang.Object
{
  private final com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[][] infos;
    descriptor: [[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.ArrayList<java.lang.Integer>[] predecessors;
    descriptor: [Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: [Ljava/util/ArrayList<Ljava/lang/Integer;>;

  private com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[] blocks;
    descriptor: [Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;
    flags: (0x0002) ACC_PRIVATE

  private java.util.ArrayList<java.util.HashMap<com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol, java.util.List<com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo>>> blockEntryDebugInfo;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/ArrayList<Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;>;

  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 64
            ldc Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            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.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // int blockCount
         0: .line 240
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 241
            aload 0 /* this */
            iload 1 /* blockCount */
            anewarray com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[]
            putfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
         2: .line 242
            return
        end local 1 // int blockCount
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0    3     1  blockCount  I
    MethodParameters:
            Name  Flags
      blockCount  

  public void setBlockDebugInfo(int, com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[]);
    descriptor: (I[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // int blockIndex
        start local 2 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[] debugInfo
         0: .line 245
            getstatic com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            iload 1 /* blockIndex */
            aaload
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 246
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            iload 1 /* blockIndex */
            aload 2 /* debugInfo */
            aastore
         2: .line 247
            return
        end local 2 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[] debugInfo
        end local 1 // int blockIndex
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0    3     1  blockIndex  I
            0    3     2   debugInfo  [Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
    MethodParameters:
            Name  Flags
      blockIndex  
      debugInfo   

  public void setBlocks(com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[]);
    descriptor: ([Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[] blocks
         0: .line 250
            aload 0 /* this */
            aload 1 /* blocks */
            putfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.blocks:[Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;
         1: .line 251
            return
        end local 1 // com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[] blocks
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0    2     1  blocks  [Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;
    MethodParameters:
        Name  Flags
      blocks  

  public java.util.Map<com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol, java.lang.Object> getLocalVariables(com.oracle.truffle.api.frame.Frame, com.oracle.truffle.api.nodes.Node);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;Lcom/oracle/truffle/api/nodes/Node;)Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
        start local 2 // com.oracle.truffle.api.nodes.Node node
         0: .line 255
            aload 2 /* node */
            astore 3 /* current */
        start local 3 // com.oracle.truffle.api.nodes.Node current
         1: .line 256
            goto 13
         2: .line 257
      StackMap locals: com.oracle.truffle.api.nodes.Node
      StackMap stack:
            aload 3 /* current */
            invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
            instanceof com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode
            ifeq 12
         3: .line 258
            aload 3 /* current */
            invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
            checkcast com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode
            astore 4 /* block */
        start local 4 // com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode block
         4: .line 259
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         5: goto 9
         6: .line 260
      StackMap locals: com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode int
      StackMap stack:
            aload 4 /* block */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getStatements:()[Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMStatementNode;
            iload 5 /* i */
            aaload
            aload 3 /* current */
            if_acmpne 8
         7: .line 261
            aload 0 /* this */
            aload 1 /* frame */
            aload 4 /* block */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getBlockId:()I
            iload 5 /* i */
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.getLocalVariablesForIndex:(Lcom/oracle/truffle/api/frame/Frame;II)Ljava/util/Map;
            areturn
         8: .line 259
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 5 /* i */
            aload 4 /* block */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getStatements:()[Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMStatementNode;
            arraylength
            if_icmplt 6
        end local 5 // int i
        10: .line 264
            getstatic com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.$assertionsDisabled:Z
            ifne 11
            aload 3 /* current */
            aload 4 /* block */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getTerminatingInstruction:()Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMControlFlowNode;
            if_acmpeq 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* frame */
            aload 4 /* block */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getBlockId:()I
            ldc 2147483647
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.getLocalVariablesForIndex:(Lcom/oracle/truffle/api/frame/Frame;II)Ljava/util/Map;
            areturn
        end local 4 // com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode block
        12: .line 267
      StackMap locals:
      StackMap stack:
            aload 3 /* current */
            invokevirtual com.oracle.truffle.api.nodes.Node.getParent:()Lcom/oracle/truffle/api/nodes/Node;
            astore 3 /* current */
        13: .line 256
      StackMap locals:
      StackMap stack:
            aload 3 /* current */
            ifnonnull 2
        14: .line 273
            aload 0 /* this */
            aload 1 /* frame */
            iconst_0
            iconst_0
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.getLocalVariablesForIndex:(Lcom/oracle/truffle/api/frame/Frame;II)Ljava/util/Map;
            areturn
        end local 3 // com.oracle.truffle.api.nodes.Node current
        end local 2 // com.oracle.truffle.api.nodes.Node node
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0   15     1    frame  Lcom/oracle/truffle/api/frame/Frame;
            0   15     2     node  Lcom/oracle/truffle/api/nodes/Node;
            1   15     3  current  Lcom/oracle/truffle/api/nodes/Node;
            4   12     4    block  Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;
            5   10     5        i  I
    Signature: (Lcom/oracle/truffle/api/frame/Frame;Lcom/oracle/truffle/api/nodes/Node;)Ljava/util/Map<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/lang/Object;>;
    MethodParameters:
       Name  Flags
      frame  
      node   

  private java.util.HashMap<com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol, java.util.List<com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo>> applyBlockInfo(java.util.HashMap<com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol, java.util.List<com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo>>, int, int);
    descriptor: (Ljava/util/HashMap;II)Ljava/util/HashMap;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=4
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // java.util.HashMap blockEntryState
        start local 2 // int blockId
        start local 3 // int end
         0: .line 282
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 4 /* result */
        start local 4 // java.util.HashMap result
         1: .line 283
            aload 1 /* blockEntryState */
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6
            goto 4
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.HashMap int int java.util.HashMap top java.util.Iterator
      StackMap stack:
         2: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 5 /* entry */
        start local 5 // java.util.Map$Entry entry
         3: .line 284
            aload 4 /* result */
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol
            new java.util.ArrayList
            dup
            aload 5 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.Collection
            invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.util.Map$Entry entry
         4: .line 283
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 286
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            iload 2 /* blockId */
            aaload
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 18
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.HashMap int int java.util.HashMap top int int com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[]
      StackMap stack:
         6: aload 8
            iload 6
            aaload
            astore 5 /* info */
        start local 5 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo info
         7: .line 287
            aload 5 /* info */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo.instructionIndex:I
            iload 3 /* end */
            if_icmple 9
         8: .line 288
            goto 19
         9: .line 291
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.HashMap int int java.util.HashMap com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo int int com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[]
      StackMap stack:
            aload 5 /* info */
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo.isInitialize:()Z
            ifeq 13
        10: .line 292
            aload 4 /* result */
            aload 5 /* info */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo.variable:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            dup
            astore 9 /* list */
        start local 9 // java.util.List list
        11: invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 293
            goto 16
        end local 9 // java.util.List list
        13: .line 294
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 5 /* info */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo.variable:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.List
            astore 9 /* list */
        start local 9 // java.util.List list
        14: .line 295
            aload 9 /* list */
            ifnonnull 16
        15: .line 296
            aload 4 /* result */
            aload 5 /* info */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo.variable:Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            dup
            astore 9 /* list */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 299
      StackMap locals: java.util.List
      StackMap stack:
            aload 9 /* list */
            aload 5 /* info */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 9 // java.util.List list
        end local 5 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo info
        17: .line 286
            iinc 6 1
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.HashMap int int java.util.HashMap top int int com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo[]
      StackMap stack:
        18: iload 6
            iload 7
            if_icmplt 6
        19: .line 301
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.HashMap int int java.util.HashMap
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 4 // java.util.HashMap result
        end local 3 // int end
        end local 2 // int blockId
        end local 1 // java.util.HashMap blockEntryState
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   20     0             this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0   20     1  blockEntryState  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            0   20     2          blockId  I
            0   20     3              end  I
            1   20     4           result  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            3    4     5            entry  Ljava/util/Map$Entry<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            7   17     5             info  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
           11   13     9             list  Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;
           14   17     9             list  Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;
    Signature: (Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;II)Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
    MethodParameters:
                 Name  Flags
      blockEntryState  
      blockId          
      end              

  private java.util.Map<com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol, java.lang.Object> getLocalVariablesForIndex(com.oracle.truffle.api.frame.Frame, int, int);
    descriptor: (Lcom/oracle/truffle/api/frame/Frame;II)Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=11, args_size=4
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // com.oracle.truffle.api.frame.Frame frame
        start local 2 // int blockId
        start local 3 // int index
         0: .line 305
            aload 0 /* this */
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.initializePredecessors:()V
         1: .line 306
            aload 0 /* this */
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.initializeDebugInfo:()V
         2: .line 307
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.blockEntryDebugInfo:Ljava/util/ArrayList;
            iload 2 /* blockId */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.util.HashMap
            iload 2 /* blockId */
            iload 3 /* index */
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.applyBlockInfo:(Ljava/util/HashMap;II)Ljava/util/HashMap;
            astore 4 /* info */
        start local 4 // java.util.HashMap info
         3: .line 309
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 5 /* values */
        start local 5 // java.util.HashMap values
         4: .line 310
            aload 4 /* info */
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 12
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation com.oracle.truffle.api.frame.Frame int int java.util.HashMap java.util.HashMap top java.util.Iterator
      StackMap stack:
         5: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 6 /* entry */
        start local 6 // java.util.Map$Entry entry
         6: .line 312
            aconst_null
            astore 8 /* builder */
        start local 8 // com.oracle.truffle.llvm.runtime.debug.value.LLVMDebugObjectBuilder builder
         7: .line 313
            aload 6 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.List
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 10
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation com.oracle.truffle.api.frame.Frame int int java.util.HashMap java.util.HashMap java.util.Map$Entry java.util.Iterator com.oracle.truffle.llvm.runtime.debug.value.LLVMDebugObjectBuilder top java.util.Iterator
      StackMap stack:
         8: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo
            astore 9 /* di */
        start local 9 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo di
         9: .line 314
            aload 9 /* di */
            aload 8 /* builder */
            aload 1 /* frame */
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo.process:(Lcom/oracle/truffle/llvm/runtime/debug/value/LLVMDebugObjectBuilder;Lcom/oracle/truffle/api/frame/Frame;)Lcom/oracle/truffle/llvm/runtime/debug/value/LLVMDebugObjectBuilder;
            astore 8 /* builder */
        end local 9 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo di
        10: .line 313
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        11: .line 316
            aload 5 /* values */
            aload 6 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol
            aload 8 /* builder */
            aload 6 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol
            invokevirtual com.oracle.truffle.llvm.runtime.debug.value.LLVMDebugObjectBuilder.getValue:(Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;)Lcom/oracle/truffle/llvm/runtime/debug/value/LLVMDebugObject;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 8 // com.oracle.truffle.llvm.runtime.debug.value.LLVMDebugObjectBuilder builder
        end local 6 // java.util.Map$Entry entry
        12: .line 310
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation com.oracle.truffle.api.frame.Frame int int java.util.HashMap java.util.HashMap top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        13: .line 318
            aload 5 /* values */
            areturn
        end local 5 // java.util.HashMap values
        end local 4 // java.util.HashMap info
        end local 3 // int index
        end local 2 // int blockId
        end local 1 // com.oracle.truffle.api.frame.Frame frame
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0   14     1    frame  Lcom/oracle/truffle/api/frame/Frame;
            0   14     2  blockId  I
            0   14     3    index  I
            3   14     4     info  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            4   14     5   values  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/lang/Object;>;
            6   12     6    entry  Ljava/util/Map$Entry<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            7   12     8  builder  Lcom/oracle/truffle/llvm/runtime/debug/value/LLVMDebugObjectBuilder;
            9   10     9       di  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
    Signature: (Lcom/oracle/truffle/api/frame/Frame;II)Ljava/util/Map<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/lang/Object;>;
    MethodParameters:
         Name  Flags
      frame    
      blockId  
      index    

  private void initializePredecessors();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
         0: .line 322
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.predecessors:[Ljava/util/ArrayList;
            ifnonnull 18
         1: .line 324
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            arraylength
            anewarray java.util.ArrayList
            astore 1 /* result */
        start local 1 // java.util.ArrayList[] result
         2: .line 325
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 326
      StackMap locals: java.util.ArrayList[] int
      StackMap stack:
            aload 1 /* result */
            iload 2 /* i */
            new java.util.ArrayList
            dup
            iconst_2
            invokespecial java.util.ArrayList.<init>:(I)V
            aastore
         5: .line 325
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 328
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.blocks:[Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 16
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.ArrayList[] top int int com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[]
      StackMap stack:
         8: aload 5
            iload 3
            aaload
            astore 2 /* b */
        start local 2 // com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode b
         9: .line 329
            aload 2 /* b */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getTerminatingInstruction:()Lcom/oracle/truffle/llvm/runtime/nodes/api/LLVMControlFlowNode;
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.api.LLVMControlFlowNode.getSuccessors:()[I
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 14
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.ArrayList[] com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode int int com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[] top int int int[]
      StackMap stack:
        10: aload 9
            iload 7
            iaload
            istore 6 /* successor */
        start local 6 // int successor
        11: .line 330
            iload 6 /* successor */
            iflt 13
        12: .line 331
            aload 1 /* result */
            iload 6 /* successor */
            aaload
            aload 2 /* b */
            invokevirtual com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode.getBlockId:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 6 // int successor
        13: .line 329
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
        14: iload 7
            iload 8
            if_icmplt 10
        end local 2 // com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode b
        15: .line 328
            iinc 3 1
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation java.util.ArrayList[] top int int com.oracle.truffle.llvm.runtime.nodes.base.LLVMBasicBlockNode[]
      StackMap stack:
        16: iload 3
            iload 4
            if_icmplt 8
        17: .line 335
            aload 0 /* this */
            aload 1 /* result */
            putfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.predecessors:[Ljava/util/ArrayList;
        end local 1 // java.util.ArrayList[] result
        18: .line 337
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            2   18     1     result  [Ljava/util/ArrayList;
            3    7     2          i  I
            9   15     2          b  Lcom/oracle/truffle/llvm/runtime/nodes/base/LLVMBasicBlockNode;
           11   13     6  successor  I

  private void initializeDebugInfo();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
         0: .line 345
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.blockEntryDebugInfo:Ljava/util/ArrayList;
            ifnonnull 22
         1: .line 346
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* result */
        start local 1 // java.util.ArrayList result
         2: .line 347
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 348
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 1 /* result */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 347
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 353
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* changed */
        start local 2 // boolean changed
         8: .line 354
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         9: goto 12
        10: .line 355
      StackMap locals: int int
      StackMap stack:
            iload 2 /* changed */
            aload 0 /* this */
            iload 3 /* i */
            aload 1 /* result */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.predecessors:[Ljava/util/ArrayList;
            iload 3 /* i */
            aaload
            iconst_1
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.merge:(ILjava/util/List;Ljava/util/ArrayList;Z)Z
            ior
            istore 2 /* changed */
        11: .line 354
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 3 /* i */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            arraylength
            if_icmplt 10
        end local 3 // int i
        13: .line 357
            iload 2 /* changed */
            ifne 7
        14: .line 360
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* changed */
        15: .line 361
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        16: goto 19
        17: .line 362
      StackMap locals: int
      StackMap stack:
            iload 2 /* changed */
            aload 0 /* this */
            iload 3 /* i */
            aload 1 /* result */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.predecessors:[Ljava/util/ArrayList;
            iload 3 /* i */
            aaload
            iconst_0
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.merge:(ILjava/util/List;Ljava/util/ArrayList;Z)Z
            ior
            istore 2 /* changed */
        18: .line 361
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 3 /* i */
            aload 0 /* this */
            getfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.infos:[[Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;
            arraylength
            if_icmplt 17
        end local 3 // int i
        20: .line 364
            iload 2 /* changed */
            ifne 14
        21: .line 365
            aload 0 /* this */
            aload 1 /* result */
            putfield com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.blockEntryDebugInfo:Ljava/util/ArrayList;
        end local 2 // boolean changed
        end local 1 // java.util.ArrayList result
        22: .line 367
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   23     0     this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            2   22     1   result  Ljava/util/ArrayList<Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;>;
            3    7     2        i  I
            8   22     2  changed  Z
            9   13     3        i  I
           16   20     3        i  I

  private boolean merge(int, java.util.List<java.util.HashMap<com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol, java.util.List<com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo>>>, java.util.ArrayList<java.lang.Integer>, );
    descriptor: (ILjava/util/List;Ljava/util/ArrayList;Z)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=10, args_size=5
        start local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
        start local 1 // int blockId
        start local 2 // java.util.List entryDebugInfo
        start local 3 // java.util.ArrayList preds
        start local 4 // boolean propagate
         0: .line 370
            aload 3 /* preds */
            invokevirtual java.util.ArrayList.isEmpty:()Z
            ifeq 2
         1: .line 371
            iconst_0
            ireturn
         2: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* entryDebugInfo */
            aload 3 /* preds */
            iconst_0
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.util.HashMap
            aload 3 /* preds */
            iconst_0
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ldc 2147483647
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.applyBlockInfo:(Ljava/util/HashMap;II)Ljava/util/HashMap;
            astore 5 /* result */
        start local 5 // java.util.HashMap result
         3: .line 375
            iconst_1
            istore 6 /* i */
        start local 6 // int i
         4: goto 17
         5: .line 377
      StackMap locals: java.util.HashMap int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* entryDebugInfo */
            aload 3 /* preds */
            iload 6 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.util.HashMap
            aload 3 /* preds */
            iload 6 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ldc 2147483647
            invokevirtual com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation.applyBlockInfo:(Ljava/util/HashMap;II)Ljava/util/HashMap;
            astore 7 /* variables */
        start local 7 // java.util.HashMap variables
         6: .line 378
            aload 7 /* variables */
            invokevirtual java.util.HashMap.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8 /* iterator */
        start local 8 // java.util.Iterator iterator
         7: .line 379
            goto 15
         8: .line 380
      StackMap locals: java.util.HashMap java.util.Iterator
      StackMap stack:
            aload 8 /* iterator */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 9 /* existing */
        start local 9 // java.util.Map$Entry existing
         9: .line 381
            iload 4 /* propagate */
            ifeq 13
        10: .line 383
            aload 5 /* result */
            aload 9 /* existing */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokevirtual java.util.HashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 15
        11: .line 384
            aload 5 /* result */
            aload 9 /* existing */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.oracle.truffle.llvm.runtime.debug.scope.LLVMSourceSymbol
            aload 9 /* existing */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.util.List
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        12: .line 386
            goto 15
        13: .line 388
      StackMap locals: java.util.Map$Entry
      StackMap stack:
            aload 7 /* variables */
            aload 9 /* existing */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 9 /* existing */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifne 15
        14: .line 389
            aload 8 /* iterator */
            invokeinterface java.util.Iterator.remove:()V
        end local 9 // java.util.Map$Entry existing
        15: .line 379
      StackMap locals:
      StackMap stack:
            aload 8 /* iterator */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 8 // java.util.Iterator iterator
        end local 7 // java.util.HashMap variables
        16: .line 375
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 6 /* i */
            aload 3 /* preds */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 5
        end local 6 // int i
        18: .line 394
            aload 2 /* entryDebugInfo */
            iload 1 /* blockId */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast java.util.HashMap
            astore 6 /* old */
        start local 6 // java.util.HashMap old
        19: .line 395
            aload 2 /* entryDebugInfo */
            iload 1 /* blockId */
            aload 5 /* result */
            invokeinterface java.util.List.set:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 396
            aload 6 /* old */
            aload 5 /* result */
            invokevirtual java.util.HashMap.equals:(Ljava/lang/Object;)Z
            ifeq 21
            iconst_0
            goto 22
      StackMap locals: com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation int java.util.List java.util.ArrayList int java.util.HashMap java.util.HashMap
      StackMap stack:
        21: iconst_1
      StackMap locals:
      StackMap stack: int
        22: ireturn
        end local 6 // java.util.HashMap old
        end local 5 // java.util.HashMap result
        end local 4 // boolean propagate
        end local 3 // java.util.ArrayList preds
        end local 2 // java.util.List entryDebugInfo
        end local 1 // int blockId
        end local 0 // com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   23     0            this  Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation;
            0   23     1         blockId  I
            0   23     2  entryDebugInfo  Ljava/util/List<Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;>;
            0   23     3           preds  Ljava/util/ArrayList<Ljava/lang/Integer;>;
            0   23     4       propagate  Z
            3   23     5          result  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            4   18     6               i  I
            6   16     7       variables  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
            7   16     8        iterator  Ljava/util/Iterator<Ljava/util/Map$Entry<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;>;
            9   15     9        existing  Ljava/util/Map$Entry<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
           19   23     6             old  Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;
    Signature: (ILjava/util/List<Ljava/util/HashMap<Lcom/oracle/truffle/llvm/runtime/debug/scope/LLVMSourceSymbol;Ljava/util/List<Lcom/oracle/truffle/llvm/parser/nodes/LLVMRuntimeDebugInformation$LocalVarDebugInfo;>;>;>;Ljava/util/ArrayList<Ljava/lang/Integer;>;Z)Z
    MethodParameters:
                Name  Flags
      blockId         
      entryDebugInfo  
      preds           
      propagate       
}
SourceFile: "LLVMRuntimeDebugInformation.java"
NestMembers:
  com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$ClearLocalVariableParts  com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$InitAggreateLocalVariable  com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo  com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$SetLocalVariablePart  com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$SimpleLocalVariable
InnerClasses:
  final ClearLocalVariableParts = com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$ClearLocalVariableParts of com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
  final InitAggreateLocalVariable = com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$InitAggreateLocalVariable of com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
  abstract LocalVarDebugInfo = com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$LocalVarDebugInfo of com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
  final SetLocalVariablePart = com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$SetLocalVariablePart of com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
  SimpleLocalVariable = com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation$SimpleLocalVariable of com.oracle.truffle.llvm.parser.nodes.LLVMRuntimeDebugInformation
  public abstract Entry = java.util.Map$Entry of java.util.Map