public final class com.oracle.graal.pointsto.util.CompletionExecutor
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.oracle.graal.pointsto.util.CompletionExecutor
  super_class: java.lang.Object
{
  private final java.util.concurrent.atomic.AtomicReference<com.oracle.graal.pointsto.util.CompletionExecutor$State> state;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;>;

  private final java.util.concurrent.atomic.LongAdder postedOperations;
    descriptor: Ljava/util/concurrent/atomic/LongAdder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.atomic.LongAdder completedOperations;
    descriptor: Ljava/util/concurrent/atomic/LongAdder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable> postedBeforeStart;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;>;

  private volatile java.util.concurrent.CopyOnWriteArrayList<java.lang.Throwable> exceptions;
    descriptor: Ljava/util/concurrent/CopyOnWriteArrayList;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
    Signature: Ljava/util/concurrent/CopyOnWriteArrayList<Ljava/lang/Throwable;>;

  private final java.util.concurrent.ForkJoinPool executorService;
    descriptor: Ljava/util/concurrent/ForkJoinPool;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.Runnable heartbeatCallback;
    descriptor: Ljava/lang/Runnable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.graal.pointsto.BigBang bb;
    descriptor: Lcom/oracle/graal/pointsto/BigBang;
    flags: (0x0002) ACC_PRIVATE

  private com.oracle.graal.pointsto.util.CompletionExecutor$Timing timing;
    descriptor: Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.Object vmConfig;
    descriptor: Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$com$oracle$graal$pointsto$util$CompletionExecutor$State;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 52
            ldc Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            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.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(com.oracle.graal.pointsto.BigBang, java.util.concurrent.ForkJoinPool, java.lang.Runnable);
    descriptor: (Lcom/oracle/graal/pointsto/BigBang;Ljava/util/concurrent/ForkJoinPool;Ljava/lang/Runnable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
        start local 1 // com.oracle.graal.pointsto.BigBang bb
        start local 2 // java.util.concurrent.ForkJoinPool forkJoin
        start local 3 // java.lang.Runnable heartbeatCallback
         0: .line 85
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 64
            aload 0 /* this */
            new java.util.concurrent.CopyOnWriteArrayList
            dup
            invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
         2: .line 86
            aload 0 /* this */
            aload 1 /* bb */
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
         3: .line 87
            aload 0 /* this */
            aload 3 /* heartbeatCallback */
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.heartbeatCallback:Ljava/lang/Runnable;
         4: .line 88
            aload 0 /* this */
            aload 2 /* forkJoin */
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
         5: .line 89
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.UNUSED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:(Ljava/lang/Object;)V
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.state:Ljava/util/concurrent/atomic/AtomicReference;
         6: .line 90
            aload 0 /* this */
            new java.util.concurrent.atomic.LongAdder
            dup
            invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
         7: .line 91
            aload 0 /* this */
            new java.util.concurrent.atomic.LongAdder
            dup
            invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
         8: .line 92
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.postedBeforeStart:Ljava/util/List;
         9: .line 93
            return
        end local 3 // java.lang.Runnable heartbeatCallback
        end local 2 // java.util.concurrent.ForkJoinPool forkJoin
        end local 1 // com.oracle.graal.pointsto.BigBang bb
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            0   10     1                 bb  Lcom/oracle/graal/pointsto/BigBang;
            0   10     2           forkJoin  Ljava/util/concurrent/ForkJoinPool;
            0   10     3  heartbeatCallback  Ljava/lang/Runnable;
    MethodParameters:
                   Name  Flags
      bb                 
      forkJoin           
      heartbeatCallback  

  public void init();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 96
            aload 0 /* this */
            aconst_null
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.init:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;)V
         1: .line 97
            return
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  public void init(com.oracle.graal.pointsto.util.CompletionExecutor$Timing);
    descriptor: (Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
        start local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$Timing newTiming
         0: .line 100
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.isSequential:()Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
            invokevirtual java.util.concurrent.ForkJoinPool.hasQueuedSubmissions:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* newTiming */
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
         2: .line 103
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.BEFORE_START:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.setState:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;)V
         3: .line 104
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.reset:()V
         4: .line 105
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.reset:()V
         5: .line 106
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedBeforeStart:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         6: .line 107
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getHostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            invokeinterface com.oracle.graal.pointsto.api.HostVM.getConfiguration:()Ljava/lang/Object;
            putfield com.oracle.graal.pointsto.util.CompletionExecutor.vmConfig:Ljava/lang/Object;
         7: .line 108
            return
        end local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$Timing newTiming
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            0    8     1  newTiming  Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
    MethodParameters:
           Name  Flags
      newTiming  

  public void execute(com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable);
    descriptor: (Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
        start local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable command
         0: .line 137
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.isEmpty:()Z
            ifne 2
         1: .line 139
            return
         2: .line 142
      StackMap locals:
      StackMap stack:
            invokestatic com.oracle.graal.pointsto.util.CompletionExecutor.$SWITCH_TABLE$com$oracle$graal$pointsto$util$CompletionExecutor$State:()[I
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.state:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.util.CompletionExecutor$State
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor$State.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 4
                    2: 6
                    3: 3
              default: 30
          }
         3: .line 144
      StackMap locals:
      StackMap stack:
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
         4: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedBeforeStart:Ljava/util/List;
            aload 1 /* command */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         5: .line 147
            goto 31
         6: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
         7: .line 150
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 9
         8: .line 151
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            aload 1 /* command */
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.addScheduled:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
         9: .line 154
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.isSequential:()Z
            ifeq 28
        10: .line 155
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.heartbeatCallback:Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
        11: .line 156
            aconst_null
            astore 2
            aconst_null
            astore 3
        12: aload 1 /* command */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getDebugHandlerFactories:()Ljava/util/List;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable.getDebug:(Lorg/graalvm/compiler/options/OptionValues;Ljava/util/List;)Lorg/graalvm/compiler/debug/DebugContext;
            astore 4 /* debug */
        start local 4 // org.graalvm.compiler.debug.DebugContext debug
        13: .line 157
            aload 4 /* debug */
            ldc "Operation"
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 5 /* s */
        start local 5 // org.graalvm.compiler.debug.DebugContext$Scope s
        14: .line 158
            aload 1 /* command */
            aload 4 /* debug */
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable.run:(Lorg/graalvm/compiler/debug/DebugContext;)V
        15: .line 159
            aload 5 /* s */
            ifnull 18
            aload 5 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
            goto 18
      StackMap locals: com.oracle.graal.pointsto.util.CompletionExecutor com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.debug.DebugContext$Scope
      StackMap stack: java.lang.Throwable
        16: astore 2
            aload 5 /* s */
            ifnull 17
            aload 5 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 5 // org.graalvm.compiler.debug.DebugContext$Scope s
      StackMap locals:
      StackMap stack:
        17: aload 2
            athrow
      StackMap locals:
      StackMap stack:
        18: aload 4 /* debug */
            ifnull 26
            aload 4 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
            goto 26
      StackMap locals:
      StackMap stack: java.lang.Throwable
        19: astore 3
            aload 2
            ifnonnull 20
            aload 3
            astore 2
            goto 21
      StackMap locals:
      StackMap stack:
        20: aload 2
            aload 3
            if_acmpeq 21
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        21: aload 4 /* debug */
            ifnull 22
            aload 4 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
        end local 4 // org.graalvm.compiler.debug.DebugContext debug
      StackMap locals:
      StackMap stack:
        22: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        23: astore 3
            aload 2
            ifnonnull 24
            aload 3
            astore 2
            goto 25
      StackMap locals:
      StackMap stack:
        24: aload 2
            aload 3
            if_acmpeq 25
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        25: aload 2
            athrow
        26: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
        27: .line 161
            goto 31
        28: .line 162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
            aload 0 /* this */
            aload 1 /* command */
            invokedynamic run(Lcom/oracle/graal/pointsto/util/CompletionExecutor;Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)Ljava/lang/Runnable;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()V
                  com/oracle/graal/pointsto/util/CompletionExecutor.lambda$0(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V (7)
                  ()V
            invokevirtual java.util.concurrent.ForkJoinPool.execute:(Ljava/lang/Runnable;)V
        29: .line 191
            goto 31
        30: .line 193
      StackMap locals:
      StackMap stack:
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:()Ljava/lang/RuntimeException;
            athrow
        31: .line 195
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable command
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            0   32     1  command  Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;
           13   22     4    debug  Lorg/graalvm/compiler/debug/DebugContext;
           14   17     5        s  Lorg/graalvm/compiler/debug/DebugContext$Scope;
      Exception table:
        from    to  target  type
          14    15      16  any
          13    18      19  any
          12    23      23  any
    MethodParameters:
         Name  Flags
      command  

  public void start();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 198
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.state:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.BEFORE_START:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.STARTED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.setState:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;)V
         2: .line 201
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedBeforeStart:Ljava/util/List;
            aload 0 /* this */
            invokedynamic accept(Lcom/oracle/graal/pointsto/util/CompletionExecutor;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/graal/pointsto/util/CompletionExecutor.execute(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V (5)
                  (Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         3: .line 202
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedBeforeStart:Ljava/util/List;
            invokeinterface java.util.List.clear:()V
         4: .line 203
            return
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  private void setState(com.oracle.graal.pointsto.util.CompletionExecutor$State);
    descriptor: (Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
        start local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$State newState
         0: .line 206
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.state:Ljava/util/concurrent/atomic/AtomicReference;
            aload 1 /* newState */
            invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
         1: .line 207
            return
        end local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$State newState
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            0    2     1  newState  Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
    MethodParameters:
          Name  Flags
      newState  

  public long complete();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 211
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.isSequential:()Z
            ifeq 5
         1: .line 212
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            lstore 1 /* completed */
        start local 1 // long completed
         2: .line 213
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            lstore 3 /* posted */
        start local 3 // long posted
         3: .line 214
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 4
            lload 1 /* completed */
            lload 3 /* posted */
            lcmp
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 215
      StackMap locals: long long
      StackMap stack:
            lload 3 /* posted */
            lreturn
        end local 3 // long posted
        end local 1 // long completed
         5: .line 218
      StackMap locals:
      StackMap stack:
            lconst_0
            lstore 1 /* lastPrint */
        start local 1 // long lastPrint
         6: .line 219
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 10
         7: .line 220
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.printHeader:()V
         8: .line 221
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.print:()V
         9: .line 222
            invokestatic java.lang.System.nanoTime:()J
            lstore 1 /* lastPrint */
        10: .line 226
      StackMap locals: long
      StackMap stack:
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 11
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.state:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.STARTED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            if_acmpeq 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 228
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
            ldc 100
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokevirtual java.util.concurrent.ForkJoinPool.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            istore 3 /* quiescent */
        start local 3 // boolean quiescent
        12: .line 229
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 17
            iload 3 /* quiescent */
            ifne 17
        13: .line 230
            invokestatic java.lang.System.nanoTime:()J
            lstore 4 /* curTime */
        start local 4 // long curTime
        14: .line 231
            lload 4 /* curTime */
            lload 1 /* lastPrint */
            lsub
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.getPrintIntervalNanos:()J
            lcmp
            ifle 17
        15: .line 232
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.print:()V
        16: .line 233
            lload 4 /* curTime */
            lstore 1 /* lastPrint */
        end local 4 // long curTime
        17: .line 237
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            lstore 4 /* completed */
        start local 4 // long completed
        18: .line 238
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            lstore 6 /* posted */
        start local 6 // long posted
        19: .line 239
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 20
            lload 4 /* completed */
            lload 6 /* posted */
            lcmp
            ifle 20
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        20: .line 240
      StackMap locals: long long
      StackMap stack:
            lload 4 /* completed */
            lload 6 /* posted */
            lcmp
            ifne 24
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.isEmpty:()Z
            ifeq 24
        21: .line 241
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 23
        22: .line 242
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.print:()V
        23: .line 245
      StackMap locals:
      StackMap stack:
            lload 6 /* posted */
            lreturn
        24: .line 247
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.isEmpty:()Z
            ifne 10
        25: .line 248
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.UNUSED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.setState:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;)V
        26: .line 249
            new com.oracle.graal.pointsto.util.ParallelExecutionException
            dup
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            invokespecial com.oracle.graal.pointsto.util.ParallelExecutionException.<init>:(Ljava/util/List;)V
            athrow
        end local 6 // long posted
        end local 4 // long completed
        end local 3 // boolean quiescent
        end local 1 // long lastPrint
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            2    5     1  completed  J
            3    5     3     posted  J
            6   27     1  lastPrint  J
           12   27     3  quiescent  Z
           14   17     4    curTime  J
           18   27     4  completed  J
           19   27     6     posted  J
    Exceptions:
      throws java.lang.InterruptedException

  public long getPostedOperations();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 255
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedBeforeStart:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            i2l
            ladd
            lreturn
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  public boolean isSequential();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 259
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  public void shutdown();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 263
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.isSequential:()Z
            ifne 1
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
            invokevirtual java.util.concurrent.ForkJoinPool.hasQueuedSubmissions:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            ldc "There should be no queued submissions on shutdown."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 264
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            lcmp
            ifeq 2
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Posted operations ("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.postedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc ") must match completed ("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc ") operations"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 265
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.UNUSED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.setState:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;)V
         3: .line 266
            return
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  public boolean isStarted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 269
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.state:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.STARTED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  public java.util.concurrent.ForkJoinPool getExecutorService();
    descriptor: ()Ljava/util/concurrent/ForkJoinPool;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 273
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.executorService:Ljava/util/concurrent/ForkJoinPool;
            areturn
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;

  static int[] $SWITCH_TABLE$com$oracle$graal$pointsto$util$CompletionExecutor$State();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 52
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor.$SWITCH_TABLE$com$oracle$graal$pointsto$util$CompletionExecutor$State:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic com.oracle.graal.pointsto.util.CompletionExecutor$State.values:()[Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.BEFORE_START:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor$State.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.STARTED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor$State.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic com.oracle.graal.pointsto.util.CompletionExecutor$State.UNUSED:Lcom/oracle/graal/pointsto/util/CompletionExecutor$State;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor$State.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic com.oracle.graal.pointsto.util.CompletionExecutor.$SWITCH_TABLE$com$oracle$graal$pointsto$util$CompletionExecutor$State:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError

  private void lambda$0(com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable);
    descriptor: (Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=13, args_size=2
        start local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
         0: .line 163
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getHostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.vmConfig:Ljava/lang/Object;
            invokeinterface com.oracle.graal.pointsto.api.HostVM.installInThread:(Ljava/lang/Object;)V
         1: .line 164
            lconst_0
            lstore 2 /* startTime */
        start local 2 // long startTime
         2: .line 165
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 4
         3: .line 166
            invokestatic java.lang.System.nanoTime:()J
            lstore 2 /* startTime */
         4: .line 168
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.heartbeatCallback:Ljava/lang/Runnable;
            invokeinterface java.lang.Runnable.run:()V
         5: .line 169
            aconst_null
            astore 4 /* thrown */
        start local 4 // java.lang.Throwable thrown
         6: .line 170
            aconst_null
            astore 5
            aconst_null
            astore 6
         7: aload 1
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getDebugHandlerFactories:()Ljava/util/List;
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable.getDebug:(Lorg/graalvm/compiler/options/OptionValues;Ljava/util/List;)Lorg/graalvm/compiler/debug/DebugContext;
            astore 7 /* debug */
        start local 7 // org.graalvm.compiler.debug.DebugContext debug
         8: .line 171
            aload 7 /* debug */
            ldc "Operation"
            invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
            astore 8 /* s */
        start local 8 // org.graalvm.compiler.debug.DebugContext$Scope s
         9: .line 172
            aload 7 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.activate:()Lorg/graalvm/compiler/debug/DebugContext$Activation;
            astore 9 /* a */
        start local 9 // org.graalvm.compiler.debug.DebugContext$Activation a
        10: .line 173
            aload 1
            aload 7 /* debug */
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable.run:(Lorg/graalvm/compiler/debug/DebugContext;)V
        11: .line 174
            aload 9 /* a */
            ifnull 14
            aload 9 /* a */
            invokevirtual org.graalvm.compiler.debug.DebugContext$Activation.close:()V
            goto 14
      StackMap locals: com.oracle.graal.pointsto.util.CompletionExecutor com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable long java.lang.Throwable java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.debug.DebugContext$Activation
      StackMap stack: java.lang.Throwable
        12: astore 5
            aload 9 /* a */
            ifnull 13
            aload 9 /* a */
            invokevirtual org.graalvm.compiler.debug.DebugContext$Activation.close:()V
        end local 9 // org.graalvm.compiler.debug.DebugContext$Activation a
      StackMap locals:
      StackMap stack:
        13: aload 5
            athrow
      StackMap locals:
      StackMap stack:
        14: aload 8 /* s */
            ifnull 19
            aload 8 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
            goto 19
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 6
            aload 5
            ifnonnull 16
            aload 6
            astore 5
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 5
            aload 6
            if_acmpeq 17
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 8 /* s */
            ifnull 18
            aload 8 /* s */
            invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
        end local 8 // org.graalvm.compiler.debug.DebugContext$Scope s
      StackMap locals:
      StackMap stack:
        18: aload 5
            athrow
      StackMap locals:
      StackMap stack:
        19: aload 7 /* debug */
            ifnull 45
            aload 7 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
            goto 45
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 6
            aload 5
            ifnonnull 21
            aload 6
            astore 5
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 5
            aload 6
            if_acmpeq 22
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 7 /* debug */
            ifnull 23
            aload 7 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.close:()V
        end local 7 // org.graalvm.compiler.debug.DebugContext debug
      StackMap locals:
      StackMap stack:
        23: aload 5
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: astore 6
            aload 5
            ifnonnull 25
            aload 6
            astore 5
            goto 26
      StackMap locals:
      StackMap stack:
        25: aload 5
            aload 6
            if_acmpeq 26
            aload 5
            aload 6
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        26: aload 5
            athrow
      StackMap locals: com.oracle.graal.pointsto.util.CompletionExecutor com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable long java.lang.Throwable
      StackMap stack: java.lang.Throwable
        27: astore 5 /* x */
        start local 5 // java.lang.Throwable x
        28: .line 175
            aload 5 /* x */
            astore 4 /* thrown */
        end local 5 // java.lang.Throwable x
        29: .line 177
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getHostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            invokeinterface com.oracle.graal.pointsto.api.HostVM.clearInThread:()V
        30: .line 178
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 33
        31: .line 179
            invokestatic java.lang.System.nanoTime:()J
            lload 2 /* startTime */
            lsub
            lstore 11 /* taskTime */
        start local 11 // long taskTime
        32: .line 180
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            aload 1
            lload 11 /* taskTime */
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.addCompleted:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;J)V
        end local 11 // long taskTime
        33: .line 183
      StackMap locals:
      StackMap stack:
            aload 4 /* thrown */
            ifnull 35
        34: .line 184
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 4 /* thrown */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.add:(Ljava/lang/Object;)Z
            pop
        35: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
            goto 52
        36: .line 176
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 10
        37: .line 177
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getHostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            invokeinterface com.oracle.graal.pointsto.api.HostVM.clearInThread:()V
        38: .line 178
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 41
        39: .line 179
            invokestatic java.lang.System.nanoTime:()J
            lload 2 /* startTime */
            lsub
            lstore 11 /* taskTime */
        start local 11 // long taskTime
        40: .line 180
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            aload 1
            lload 11 /* taskTime */
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.addCompleted:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;J)V
        end local 11 // long taskTime
        41: .line 183
      StackMap locals: com.oracle.graal.pointsto.util.CompletionExecutor com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable long java.lang.Throwable top top top top top java.lang.Throwable
      StackMap stack:
            aload 4 /* thrown */
            ifnull 43
        42: .line 184
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 4 /* thrown */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.add:(Ljava/lang/Object;)Z
            pop
        43: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
        44: .line 187
            aload 10
            athrow
        45: .line 177
      StackMap locals: com.oracle.graal.pointsto.util.CompletionExecutor com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable long java.lang.Throwable
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.bb:Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getHostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            invokeinterface com.oracle.graal.pointsto.api.HostVM.clearInThread:()V
        46: .line 178
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            ifnull 49
        47: .line 179
            invokestatic java.lang.System.nanoTime:()J
            lload 2 /* startTime */
            lsub
            lstore 11 /* taskTime */
        start local 11 // long taskTime
        48: .line 180
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            aload 1
            lload 11 /* taskTime */
            invokeinterface com.oracle.graal.pointsto.util.CompletionExecutor$Timing.addCompleted:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;J)V
        end local 11 // long taskTime
        49: .line 183
      StackMap locals:
      StackMap stack:
            aload 4 /* thrown */
            ifnull 51
        50: .line 184
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.exceptions:Ljava/util/concurrent/CopyOnWriteArrayList;
            aload 4 /* thrown */
            invokevirtual java.util.concurrent.CopyOnWriteArrayList.add:(Ljava/lang/Object;)Z
            pop
        51: .line 186
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.util.CompletionExecutor.completedOperations:Ljava/util/concurrent/atomic/LongAdder;
            invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
        end local 4 // java.lang.Throwable thrown
        end local 2 // long startTime
        52: .line 188
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.graal.pointsto.util.CompletionExecutor this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   53     0       this  Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            2   52     2  startTime  J
            6   52     4     thrown  Ljava/lang/Throwable;
            8   23     7      debug  Lorg/graalvm/compiler/debug/DebugContext;
            9   18     8          s  Lorg/graalvm/compiler/debug/DebugContext$Scope;
           10   13     9          a  Lorg/graalvm/compiler/debug/DebugContext$Activation;
           28   29     5          x  Ljava/lang/Throwable;
           32   33    11   taskTime  J
           40   41    11   taskTime  J
           48   49    11   taskTime  J
      Exception table:
        from    to  target  type
          10    11      12  any
           9    14      15  any
           8    19      20  any
           7    24      24  any
           6    27      27  Class java.lang.Throwable
           6    29      36  any
}
SourceFile: "CompletionExecutor.java"
NestMembers:
  com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable  com.oracle.graal.pointsto.util.CompletionExecutor$State  com.oracle.graal.pointsto.util.CompletionExecutor$Timing
InnerClasses:
  public abstract DebugContextRunnable = com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable of com.oracle.graal.pointsto.util.CompletionExecutor
  private final State = com.oracle.graal.pointsto.util.CompletionExecutor$State of com.oracle.graal.pointsto.util.CompletionExecutor
  public abstract Timing = com.oracle.graal.pointsto.util.CompletionExecutor$Timing of com.oracle.graal.pointsto.util.CompletionExecutor
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public Activation = org.graalvm.compiler.debug.DebugContext$Activation of org.graalvm.compiler.debug.DebugContext
  public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext