public final class org.graalvm.compiler.core.common.alloc.TraceBuilderResult
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.core.common.alloc.TraceBuilderResult
  super_class: java.lang.Object
{
  private final java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace> traces;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;

  private final org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace;
    descriptor: [Lorg/graalvm/compiler/core/common/alloc/Trace;
    flags: (0x0012) ACC_PRIVATE, 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 33
            ldc Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            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.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static org.graalvm.compiler.core.common.alloc.TraceBuilderResult create(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>[], java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace>, org.graalvm.compiler.core.common.alloc.Trace[], org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate);
    descriptor: ([Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;Ljava/util/ArrayList;[Lorg/graalvm/compiler/core/common/alloc/Trace;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;)Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] blocks
        start local 1 // java.util.ArrayList traces
        start local 2 // org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace
        start local 3 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate pred
         0: .line 43
            aload 1 /* traces */
            aload 2 /* blockToTrace */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.connect:(Ljava/util/ArrayList;[Lorg/graalvm/compiler/core/common/alloc/Trace;)V
         1: .line 44
            aload 1 /* traces */
            aload 3 /* pred */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.reorderTraces:(Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;)Ljava/util/ArrayList;
            astore 4 /* newTraces */
        start local 4 // java.util.ArrayList newTraces
         2: .line 45
            new org.graalvm.compiler.core.common.alloc.TraceBuilderResult
            dup
            aload 4 /* newTraces */
            aload 2 /* blockToTrace */
            invokespecial org.graalvm.compiler.core.common.alloc.TraceBuilderResult.<init>:(Ljava/util/ArrayList;[Lorg/graalvm/compiler/core/common/alloc/Trace;)V
            astore 5 /* traceBuilderResult */
        start local 5 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult traceBuilderResult
         3: .line 46
            aload 5 /* traceBuilderResult */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.numberTraces:()V
         4: .line 47
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 5
            aload 5 /* traceBuilderResult */
            aload 0 /* blocks */
            arraylength
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.verify:(Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;I)Z
            ifne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 48
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.TraceBuilderResult
      StackMap stack:
            aload 5 /* traceBuilderResult */
            areturn
        end local 5 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult traceBuilderResult
        end local 4 // java.util.ArrayList newTraces
        end local 3 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate pred
        end local 2 // org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace
        end local 1 // java.util.ArrayList traces
        end local 0 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] blocks
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0              blocks  [Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            0    6     1              traces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            0    6     2        blockToTrace  [Lorg/graalvm/compiler/core/common/alloc/Trace;
            0    6     3                pred  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;
            2    6     4           newTraces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            3    6     5  traceBuilderResult  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
    Signature: ([Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;[Lorg/graalvm/compiler/core/common/alloc/Trace;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;)Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
    MethodParameters:
              Name  Flags
      blocks        
      traces        
      blockToTrace  
      pred          

  private void <init>(java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace>, org.graalvm.compiler.core.common.alloc.Trace[]);
    descriptor: (Ljava/util/ArrayList;[Lorg/graalvm/compiler/core/common/alloc/Trace;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
        start local 1 // java.util.ArrayList traces
        start local 2 // org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            aload 0 /* this */
            aload 1 /* traces */
            putfield org.graalvm.compiler.core.common.alloc.TraceBuilderResult.traces:Ljava/util/ArrayList;
         2: .line 53
            aload 0 /* this */
            aload 2 /* blockToTrace */
            putfield org.graalvm.compiler.core.common.alloc.TraceBuilderResult.blockToTrace:[Lorg/graalvm/compiler/core/common/alloc/Trace;
         3: .line 54
            return
        end local 2 // org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace
        end local 1 // java.util.ArrayList traces
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0    4     1        traces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            0    4     2  blockToTrace  [Lorg/graalvm/compiler/core/common/alloc/Trace;
    Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;[Lorg/graalvm/compiler/core/common/alloc/Trace;)V
    MethodParameters:
              Name  Flags
      traces        
      blockToTrace  

  public org.graalvm.compiler.core.common.alloc.Trace getTraceForBlock(org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>);
    descriptor: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/alloc/Trace;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
        start local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         0: .line 57
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.alloc.TraceBuilderResult.blockToTrace:[Lorg/graalvm/compiler/core/common/alloc/Trace;
            aload 1 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
            aaload
            areturn
        end local 1 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0    1     1  block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
    Signature: (Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;)Lorg/graalvm/compiler/core/common/alloc/Trace;
    MethodParameters:
       Name  Flags
      block  

  public java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace> getTraces();
    descriptor: ()Ljava/util/ArrayList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
         0: .line 61
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.alloc.TraceBuilderResult.traces:Ljava/util/ArrayList;
            areturn
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
    Signature: ()Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;

  public boolean incomingEdges(org.graalvm.compiler.core.common.alloc.Trace);
    descriptor: (Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
        start local 1 // org.graalvm.compiler.core.common.alloc.Trace trace
         0: .line 65
            aload 0 /* this */
            aload 1 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            aload 1 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            iconst_0
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.incomingEdges:(I[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;I)Z
            ireturn
        end local 1 // org.graalvm.compiler.core.common.alloc.Trace trace
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0    1     1  trace  Lorg/graalvm/compiler/core/common/alloc/Trace;
    MethodParameters:
       Name  Flags
      trace  

  public boolean incomingSideEdges(org.graalvm.compiler.core.common.alloc.Trace);
    descriptor: (Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
        start local 1 // org.graalvm.compiler.core.common.alloc.Trace trace
         0: .line 69
            aload 1 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            astore 2 /* traceArr */
        start local 2 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] traceArr
         1: .line 70
            aload 2 /* traceArr */
            arraylength
            ifgt 3
         2: .line 71
            iconst_0
            ireturn
         3: .line 73
      StackMap locals: org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            aload 2 /* traceArr */
            iconst_1
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.incomingEdges:(I[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;I)Z
            ireturn
        end local 2 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] traceArr
        end local 1 // org.graalvm.compiler.core.common.alloc.Trace trace
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0    4     1     trace  Lorg/graalvm/compiler/core/common/alloc/Trace;
            1    4     2  traceArr  [Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
    MethodParameters:
       Name  Flags
      trace  

  private boolean incomingEdges(int, org.graalvm.compiler.core.common.cfg.AbstractBlockBase<?>[], );
    descriptor: (I[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=10, args_size=4
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
        start local 1 // int traceNr
        start local 2 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] trace
        start local 3 // int index
         0: .line 78
            iload 3 /* index */
            istore 4 /* i */
        start local 4 // int i
         1: goto 10
         2: .line 79
      StackMap locals: int
      StackMap stack:
            aload 2 /* trace */
            iconst_1
            aaload
            astore 5 /* block */
        start local 5 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         3: .line 80
            aload 5 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getPredecessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 8
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
         4: aload 9
            iload 7
            aaload
            astore 6 /* pred */
        start local 6 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase pred
         5: .line 81
            aload 0 /* this */
            aload 6 /* pred */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.getTraceForBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/alloc/Trace;
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            iload 1 /* traceNr */
            if_icmpeq 7
         6: .line 82
            iconst_1
            ireturn
        end local 6 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase pred
         7: .line 80
      StackMap locals:
      StackMap stack:
            iinc 7 1
      StackMap locals:
      StackMap stack:
         8: iload 7
            iload 8
            if_icmplt 4
        end local 5 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         9: .line 78
            iinc 4 /* i */ 1
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] int int
      StackMap stack:
        10: iload 4 /* i */
            aload 2 /* trace */
            arraylength
            if_icmplt 2
        end local 4 // int i
        11: .line 86
            iconst_0
            ireturn
        end local 3 // int index
        end local 2 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] trace
        end local 1 // int traceNr
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0   12     1  traceNr  I
            0   12     2    trace  [Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            0   12     3    index  I
            1   11     4        i  I
            3    9     5    block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
            5    7     6     pred  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
    Signature: (I[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;I)Z
    MethodParameters:
         Name  Flags
      traceNr  
      trace    
      index    

  public static boolean verify(org.graalvm.compiler.core.common.alloc.TraceBuilderResult, int);
    descriptor: (Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;I)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=18, args_size=2
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult traceBuilderResult
        start local 1 // int expectedLength
         0: .line 90
            aload 0 /* traceBuilderResult */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.getTraces:()Ljava/util/ArrayList;
            astore 2 /* traces */
        start local 2 // java.util.ArrayList traces
         1: .line 91
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 2
            aload 0 /* traceBuilderResult */
            iload 1 /* expectedLength */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.verifyAllBlocksScheduled:(Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;I)Z
            ifne 2
            new java.lang.AssertionError
            dup
            ldc "Not all blocks assigned to traces!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 92
      StackMap locals: java.util.ArrayList
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 31
         4: .line 93
      StackMap locals: int
      StackMap stack:
            aload 2 /* traces */
            iload 3 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 4 /* trace */
        start local 4 // org.graalvm.compiler.core.common.alloc.Trace trace
         5: .line 94
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 6
            aload 4 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            iload 3 /* i */
            if_icmpeq 6
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Trace number mismatch: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " vs. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 96
      StackMap locals: org.graalvm.compiler.core.common.alloc.Trace
      StackMap stack:
            new java.util.BitSet
            dup
            aload 2 /* traces */
            invokevirtual java.util.ArrayList.size:()I
            invokespecial java.util.BitSet.<init>:(I)V
            astore 5 /* suxTraces */
        start local 5 // java.util.BitSet suxTraces
         7: .line 97
            aload 4 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getSuccessors:()Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 7
            goto 11
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet top java.util.Iterator
      StackMap stack:
         8: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 6 /* suxTrace */
        start local 6 // org.graalvm.compiler.core.common.alloc.Trace suxTrace
         9: .line 98
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 10
            aload 5 /* suxTraces */
            aload 6 /* suxTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            invokevirtual java.util.BitSet.get:(I)Z
            ifeq 10
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Trace twice successors "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* suxTrace */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        10: .line 99
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator
      StackMap stack:
            aload 5 /* suxTraces */
            aload 6 /* suxTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            invokevirtual java.util.BitSet.set:(I)V
        end local 6 // org.graalvm.compiler.core.common.alloc.Trace suxTrace
        11: .line 97
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        12: .line 102
            aconst_null
            astore 6 /* last */
        start local 6 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase last
        13: .line 103
            iconst_0
            istore 7 /* blockNumber */
        start local 7 // int blockNumber
        14: .line 104
            aload 4 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 11
            arraylength
            istore 10
            iconst_0
            istore 9
            goto 29
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
        15: aload 11
            iload 9
            aaload
            astore 8 /* current */
        start local 8 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase current
        16: .line 105
            aload 8 /* current */
            astore 12 /* block */
        start local 12 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        17: .line 106
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 18
            aload 0 /* traceBuilderResult */
            aload 12 /* block */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.getTraceForBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/alloc/Trace;
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            iload 3 /* i */
            if_icmpeq 18
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Trace number mismatch for block "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 12 /* block */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* traceBuilderResult */
            aload 12 /* block */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.getTraceForBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/alloc/Trace;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " vs. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 3 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        18: .line 107
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] org.graalvm.compiler.core.common.cfg.AbstractBlockBase
      StackMap stack:
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 19
            aload 6 /* last */
            ifnull 19
            aload 8 /* current */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getPredecessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            aload 6 /* last */
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifne 19
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Last block ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* last */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ") not a predecessor of "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 8 /* current */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        19: .line 108
      StackMap locals:
      StackMap stack:
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 20
            aload 8 /* current */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLinearScanNumber:()I
            iload 7 /* blockNumber */
            if_icmpeq 20
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Blocks not numbered correctly: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 8 /* current */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getLinearScanNumber:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " vs. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 7 /* blockNumber */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        20: .line 109
      StackMap locals:
      StackMap stack:
            aload 8 /* current */
            astore 6 /* last */
        21: .line 110
            iinc 7 /* blockNumber */ 1
        22: .line 111
            aload 12 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 16
            arraylength
            istore 15
            iconst_0
            istore 14
            goto 27
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] org.graalvm.compiler.core.common.cfg.AbstractBlockBase top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
        23: aload 16
            iload 14
            aaload
            astore 13 /* sux */
        start local 13 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase sux
        24: .line 112
            aload 0 /* traceBuilderResult */
            aload 13 /* sux */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.getTraceForBlock:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Lorg/graalvm/compiler/core/common/alloc/Trace;
            astore 17 /* suxTrace */
        start local 17 // org.graalvm.compiler.core.common.alloc.Trace suxTrace
        25: .line 113
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 26
            aload 5 /* suxTraces */
            aload 17 /* suxTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            invokevirtual java.util.BitSet.get:(I)Z
            ifne 26
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Successor Trace "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 17 /* suxTrace */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " for block "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 13 /* sux */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " not in successor traces of "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* trace */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        end local 17 // org.graalvm.compiler.core.common.alloc.Trace suxTrace
        end local 13 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase sux
        26: .line 111
      StackMap locals:
      StackMap stack:
            iinc 14 1
      StackMap locals:
      StackMap stack:
        27: iload 14
            iload 15
            if_icmplt 23
        end local 12 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        end local 8 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase current
        28: .line 104
            iinc 9 1
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace java.util.BitSet org.graalvm.compiler.core.common.cfg.AbstractBlockBase int top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
        29: iload 9
            iload 10
            if_icmplt 15
        end local 7 // int blockNumber
        end local 6 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase last
        end local 5 // java.util.BitSet suxTraces
        end local 4 // org.graalvm.compiler.core.common.alloc.Trace trace
        30: .line 92
            iinc 3 /* i */ 1
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList int
      StackMap stack:
        31: iload 3 /* i */
            aload 2 /* traces */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 4
        end local 3 // int i
        32: .line 117
            iconst_1
            ireturn
        end local 2 // java.util.ArrayList traces
        end local 1 // int expectedLength
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult traceBuilderResult
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   33     0  traceBuilderResult  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0   33     1      expectedLength  I
            1   33     2              traces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            3   32     3                   i  I
            5   30     4               trace  Lorg/graalvm/compiler/core/common/alloc/Trace;
            7   30     5           suxTraces  Ljava/util/BitSet;
            9   11     6            suxTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
           13   30     6                last  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
           14   30     7         blockNumber  I
           16   28     8             current  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
           17   28    12               block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
           24   26    13                 sux  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
           25   26    17            suxTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
    MethodParameters:
                    Name  Flags
      traceBuilderResult  
      expectedLength      

  private static boolean verifyAllBlocksScheduled(org.graalvm.compiler.core.common.alloc.TraceBuilderResult, int);
    descriptor: (Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult traceBuilderResult
        start local 1 // int expectedLength
         0: .line 121
            aload 0 /* traceBuilderResult */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult.getTraces:()Ljava/util/ArrayList;
            astore 2 /* traces */
        start local 2 // java.util.ArrayList traces
         1: .line 122
            new java.util.BitSet
            dup
            iload 1 /* expectedLength */
            invokespecial java.util.BitSet.<init>:(I)V
            astore 3 /* handled */
        start local 3 // java.util.BitSet handled
         2: .line 123
            aload 2 /* traces */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 5
            goto 10
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList java.util.BitSet top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 4 /* trace */
        start local 4 // org.graalvm.compiler.core.common.alloc.Trace trace
         4: .line 124
            aload 4 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 9
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList java.util.BitSet org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
         5: aload 9
            iload 7
            aaload
            astore 6 /* block */
        start local 6 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         6: .line 125
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 7
            aload 3 /* handled */
            aload 6 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
            invokevirtual java.util.BitSet.get:(I)Z
            ifeq 7
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Block added twice: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* block */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         7: .line 126
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList java.util.BitSet org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
            aload 3 /* handled */
            aload 6 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
            invokevirtual java.util.BitSet.set:(I)V
        end local 6 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         8: .line 124
            iinc 7 1
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList java.util.BitSet org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
         9: iload 7
            iload 8
            if_icmplt 5
        end local 4 // org.graalvm.compiler.core.common.alloc.Trace trace
        10: .line 123
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList java.util.BitSet top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        11: .line 129
            aload 3 /* handled */
            invokevirtual java.util.BitSet.cardinality:()I
            iload 1 /* expectedLength */
            if_icmpne 12
            iconst_1
            ireturn
      StackMap locals: org.graalvm.compiler.core.common.alloc.TraceBuilderResult int java.util.ArrayList java.util.BitSet
      StackMap stack:
        12: iconst_0
            ireturn
        end local 3 // java.util.BitSet handled
        end local 2 // java.util.ArrayList traces
        end local 1 // int expectedLength
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult traceBuilderResult
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   13     0  traceBuilderResult  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            0   13     1      expectedLength  I
            1   13     2              traces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            2   13     3             handled  Ljava/util/BitSet;
            4   10     4               trace  Lorg/graalvm/compiler/core/common/alloc/Trace;
            6    8     6               block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
    MethodParameters:
                    Name  Flags
      traceBuilderResult  
      expectedLength      

  private void numberTraces();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
         0: .line 133
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 134
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.alloc.TraceBuilderResult.traces:Ljava/util/ArrayList;
            iload 1 /* i */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 2 /* trace */
        start local 2 // org.graalvm.compiler.core.common.alloc.Trace trace
         3: .line 135
            aload 2 /* trace */
            iload 1 /* i */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.setId:(I)V
        end local 2 // org.graalvm.compiler.core.common.alloc.Trace trace
         4: .line 133
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            aload 0 /* this */
            getfield org.graalvm.compiler.core.common.alloc.TraceBuilderResult.traces:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 2
        end local 1 // int i
         6: .line 137
            return
        end local 0 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult;
            1    6     1      i  I
            3    4     2  trace  Lorg/graalvm/compiler/core/common/alloc/Trace;

  private static void connect(java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace>, org.graalvm.compiler.core.common.alloc.Trace[]);
    descriptor: (Ljava/util/ArrayList;[Lorg/graalvm/compiler/core/common/alloc/Trace;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=17, args_size=2
        start local 0 // java.util.ArrayList traces
        start local 1 // org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace
         0: .line 140
            aload 0 /* traces */
            invokevirtual java.util.ArrayList.size:()I
            istore 2 /* numTraces */
        start local 2 // int numTraces
         1: .line 141
            aload 0 /* traces */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 19
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.Trace[] int top java.util.Iterator
      StackMap stack:
         2: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 3 /* trace */
        start local 3 // org.graalvm.compiler.core.common.alloc.Trace trace
         3: .line 142
            new java.util.BitSet
            dup
            iload 2 /* numTraces */
            invokespecial java.util.BitSet.<init>:(I)V
            astore 5 /* added */
        start local 5 // java.util.BitSet added
         4: .line 143
            aload 3 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getSuccessors:()Ljava/util/ArrayList;
            astore 6 /* successors */
        start local 6 // java.util.ArrayList successors
         5: .line 144
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 6
            aload 6 /* successors */
            invokevirtual java.util.ArrayList.size:()I
            ifeq 6
            new java.lang.AssertionError
            dup
            ldc "Can only connect traces once!"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 146
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.Trace[] int org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator java.util.BitSet java.util.ArrayList
      StackMap stack:
            aload 3 /* trace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getBlocks:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 18
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.Trace[] int org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator java.util.BitSet java.util.ArrayList top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
         7: aload 10
            iload 8
            aaload
            astore 7 /* block */
        start local 7 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
         8: .line 147
            aload 7 /* block */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getSuccessors:()[Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;
            dup
            astore 14
            arraylength
            istore 13
            iconst_0
            istore 12
            goto 16
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.Trace[] int org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator java.util.BitSet java.util.ArrayList org.graalvm.compiler.core.common.cfg.AbstractBlockBase int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[] top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
         9: aload 14
            iload 12
            aaload
            astore 11 /* succ */
        start local 11 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase succ
        10: .line 148
            aload 1 /* blockToTrace */
            aload 11 /* succ */
            invokevirtual org.graalvm.compiler.core.common.cfg.AbstractBlockBase.getId:()I
            aaload
            astore 15 /* succTrace */
        start local 15 // org.graalvm.compiler.core.common.alloc.Trace succTrace
        11: .line 149
            aload 15 /* succTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            istore 16 /* succId */
        start local 16 // int succId
        12: .line 150
            aload 5 /* added */
            iload 16 /* succId */
            invokevirtual java.util.BitSet.get:(I)Z
            ifne 15
        13: .line 151
            aload 5 /* added */
            iload 16 /* succId */
            invokevirtual java.util.BitSet.set:(I)V
        14: .line 152
            aload 6 /* successors */
            aload 15 /* succTrace */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 16 // int succId
        end local 15 // org.graalvm.compiler.core.common.alloc.Trace succTrace
        end local 11 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase succ
        15: .line 147
      StackMap locals:
      StackMap stack:
            iinc 12 1
      StackMap locals:
      StackMap stack:
        16: iload 12
            iload 13
            if_icmplt 9
        end local 7 // org.graalvm.compiler.core.common.cfg.AbstractBlockBase block
        17: .line 146
            iinc 8 1
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.Trace[] int org.graalvm.compiler.core.common.alloc.Trace java.util.Iterator java.util.BitSet java.util.ArrayList top int int org.graalvm.compiler.core.common.cfg.AbstractBlockBase[]
      StackMap stack:
        18: iload 8
            iload 9
            if_icmplt 7
        end local 6 // java.util.ArrayList successors
        end local 5 // java.util.BitSet added
        end local 3 // org.graalvm.compiler.core.common.alloc.Trace trace
        19: .line 141
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.Trace[] int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        20: .line 157
            return
        end local 2 // int numTraces
        end local 1 // org.graalvm.compiler.core.common.alloc.Trace[] blockToTrace
        end local 0 // java.util.ArrayList traces
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   21     0        traces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            0   21     1  blockToTrace  [Lorg/graalvm/compiler/core/common/alloc/Trace;
            1   21     2     numTraces  I
            3   19     3         trace  Lorg/graalvm/compiler/core/common/alloc/Trace;
            4   19     5         added  Ljava/util/BitSet;
            5   19     6    successors  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            8   17     7         block  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
           10   15    11          succ  Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase<*>;
           11   15    15     succTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
           12   15    16        succId  I
    Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;[Lorg/graalvm/compiler/core/common/alloc/Trace;)V
    MethodParameters:
              Name  Flags
      traces        
      blockToTrace  

  private static java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace> reorderTraces(java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace>, org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate);
    descriptor: (Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;)Ljava/util/ArrayList;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=10, args_size=2
        start local 0 // java.util.ArrayList oldTraces
        start local 1 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate pred
         0: .line 161
            aload 1 /* pred */
            ifnonnull 2
         1: .line 162
            aload 0 /* oldTraces */
            areturn
         2: .line 164
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2
            aconst_null
            astore 3
         3: ldc "ReorderTrace"
            invokestatic org.graalvm.compiler.debug.Debug.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
            astore 4 /* indent */
        start local 4 // org.graalvm.compiler.debug.Indent indent
         4: .line 165
            new java.util.ArrayList
            dup
            aload 0 /* oldTraces */
            invokevirtual java.util.ArrayList.size:()I
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 5 /* newTraces */
        start local 5 // java.util.ArrayList newTraces
         5: .line 166
            iconst_0
            istore 6 /* oldTraceIdx */
        start local 6 // int oldTraceIdx
         6: goto 18
         7: .line 167
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int
      StackMap stack:
            aload 0 /* oldTraces */
            iload 6 /* oldTraceIdx */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 7 /* currentTrace */
        start local 7 // org.graalvm.compiler.core.common.alloc.Trace currentTrace
         8: .line 168
            aload 5 /* newTraces */
            aload 7 /* currentTrace */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.alreadyProcessed:(Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
            ifne 17
         9: .line 169
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 10
            aload 7 /* currentTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            iload 6 /* oldTraceIdx */
            if_icmpeq 10
            new java.lang.AssertionError
            dup
            ldc "Index mismatch"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        10: .line 171
      StackMap locals: org.graalvm.compiler.core.common.alloc.Trace
      StackMap stack:
            aload 5 /* newTraces */
            aload 7 /* currentTrace */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.addTrace:(Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/Trace;)V
        11: .line 172
            aload 7 /* currentTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getSuccessors:()Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 9
            goto 16
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int org.graalvm.compiler.core.common.alloc.Trace top java.util.Iterator
      StackMap stack:
        12: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.core.common.alloc.Trace
            astore 8 /* succTrace */
        start local 8 // org.graalvm.compiler.core.common.alloc.Trace succTrace
        13: .line 173
            aload 1 /* pred */
            aload 8 /* succTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate.isTrivialTrace:(Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
            ifeq 16
            aload 5 /* newTraces */
            aload 8 /* succTrace */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.alreadyProcessed:(Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
            ifne 16
        14: .line 174
            ldc "Moving trivial trace from %d to %d"
            aload 8 /* succTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            aload 5 /* newTraces */
            invokevirtual java.util.ArrayList.size:()I
            invokestatic org.graalvm.compiler.debug.Debug.log:(Ljava/lang/String;II)V
        15: .line 176
            aload 5 /* newTraces */
            aload 8 /* succTrace */
            invokestatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.addTrace:(Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/Trace;)V
        end local 8 // org.graalvm.compiler.core.common.alloc.Trace succTrace
        16: .line 172
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        end local 7 // org.graalvm.compiler.core.common.alloc.Trace currentTrace
        17: .line 166
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.ArrayList int
      StackMap stack:
            iinc 6 /* oldTraceIdx */ 1
      StackMap locals:
      StackMap stack:
        18: iload 6 /* oldTraceIdx */
            aload 0 /* oldTraces */
            invokevirtual java.util.ArrayList.size:()I
            if_icmplt 7
        end local 6 // int oldTraceIdx
        19: .line 181
            getstatic org.graalvm.compiler.core.common.alloc.TraceBuilderResult.$assertionsDisabled:Z
            ifne 20
            aload 5 /* newTraces */
            invokevirtual java.util.ArrayList.size:()I
            aload 0 /* oldTraces */
            invokevirtual java.util.ArrayList.size:()I
            if_icmpeq 20
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Lost traces? "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* oldTraces */
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " vs. "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 5 /* newTraces */
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        20: .line 182
      StackMap locals:
      StackMap stack:
            aload 5 /* newTraces */
        21: .line 183
            aload 4 /* indent */
            ifnull 22
            aload 4 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        22: .line 182
      StackMap locals:
      StackMap stack: java.util.ArrayList
            areturn
        end local 5 // java.util.ArrayList newTraces
      StackMap locals: java.util.ArrayList org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        23: astore 2
        24: .line 183
            aload 4 /* indent */
            ifnull 25
            aload 4 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 4 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        25: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        26: astore 3
            aload 2
            ifnonnull 27
            aload 3
            astore 2
            goto 28
      StackMap locals:
      StackMap stack:
        27: aload 2
            aload 3
            if_acmpeq 28
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        28: aload 2
            athrow
        end local 1 // org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate pred
        end local 0 // java.util.ArrayList oldTraces
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   29     0     oldTraces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            0   29     1          pred  Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;
            4   25     4        indent  Lorg/graalvm/compiler/debug/Indent;
            5   23     5     newTraces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            6   19     6   oldTraceIdx  I
            8   17     7  currentTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
           13   16     8     succTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
      Exception table:
        from    to  target  type
           4    21      23  any
           3    22      26  any
          23    26      26  any
    Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;Lorg/graalvm/compiler/core/common/alloc/TraceBuilderResult$TrivialTracePredicate;)Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
    MethodParameters:
           Name  Flags
      oldTraces  
      pred       

  private static boolean alreadyProcessed(java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace>, org.graalvm.compiler.core.common.alloc.Trace);
    descriptor: (Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.util.ArrayList newTraces
        start local 1 // org.graalvm.compiler.core.common.alloc.Trace currentTrace
         0: .line 187
            aload 1 /* currentTrace */
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.getId:()I
            istore 2 /* currentTraceId */
        start local 2 // int currentTraceId
         1: .line 188
            iload 2 /* currentTraceId */
            aload 0 /* newTraces */
            invokevirtual java.util.ArrayList.size:()I
            if_icmpge 2
            aload 1 /* currentTrace */
            aload 0 /* newTraces */
            iload 2 /* currentTraceId */
            invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
            if_acmpne 2
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
         2: iconst_0
            ireturn
        end local 2 // int currentTraceId
        end local 1 // org.graalvm.compiler.core.common.alloc.Trace currentTrace
        end local 0 // java.util.ArrayList newTraces
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0       newTraces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            0    3     1    currentTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
            1    3     2  currentTraceId  I
    Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;Lorg/graalvm/compiler/core/common/alloc/Trace;)Z
    MethodParameters:
              Name  Flags
      newTraces     
      currentTrace  

  private static void addTrace(java.util.ArrayList<org.graalvm.compiler.core.common.alloc.Trace>, org.graalvm.compiler.core.common.alloc.Trace);
    descriptor: (Ljava/util/ArrayList;Lorg/graalvm/compiler/core/common/alloc/Trace;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.util.ArrayList newTraces
        start local 1 // org.graalvm.compiler.core.common.alloc.Trace currentTrace
         0: .line 192
            aload 1 /* currentTrace */
            aload 0 /* newTraces */
            invokevirtual java.util.ArrayList.size:()I
            invokevirtual org.graalvm.compiler.core.common.alloc.Trace.setId:(I)V
         1: .line 193
            aload 0 /* newTraces */
            aload 1 /* currentTrace */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         2: .line 194
            return
        end local 1 // org.graalvm.compiler.core.common.alloc.Trace currentTrace
        end local 0 // java.util.ArrayList newTraces
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0     newTraces  Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;
            0    3     1  currentTrace  Lorg/graalvm/compiler/core/common/alloc/Trace;
    Signature: (Ljava/util/ArrayList<Lorg/graalvm/compiler/core/common/alloc/Trace;>;Lorg/graalvm/compiler/core/common/alloc/Trace;)V
    MethodParameters:
              Name  Flags
      newTraces     
      currentTrace  
}
SourceFile: "TraceBuilderResult.java"
NestMembers:
  org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate
InnerClasses:
  public abstract TrivialTracePredicate = org.graalvm.compiler.core.common.alloc.TraceBuilderResult$TrivialTracePredicate of org.graalvm.compiler.core.common.alloc.TraceBuilderResult