public abstract class com.oracle.graal.pointsto.BigBang
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.graal.pointsto.BigBang
  super_class: java.lang.Object
{
  private final org.graalvm.compiler.options.OptionValues options;
    descriptor: Lorg/graalvm/compiler/options/OptionValues;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<org.graalvm.compiler.debug.DebugHandlersFactory> debugHandlerFactories;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;

  private final org.graalvm.compiler.debug.DebugContext debug;
    descriptor: Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.graal.pointsto.meta.HostedProviders providers;
    descriptor: Lcom/oracle/graal/pointsto/meta/HostedProviders;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.nodes.spi.Replacements replacements;
    descriptor: Lorg/graalvm/compiler/nodes/spi/Replacements;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.graal.pointsto.HeapScanningPolicy heapScanningPolicy;
    descriptor: Lcom/oracle/graal/pointsto/HeapScanningPolicy;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.oracle.graal.pointsto.meta.AnalysisType objectType;
    descriptor: Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.graal.pointsto.flow.TypeFlow<?> allSynchronizedTypeFlow;
    descriptor: Lcom/oracle/graal/pointsto/flow/TypeFlow;
    flags: (0x0002) ACC_PRIVATE
    Signature: Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;

  private com.oracle.graal.pointsto.flow.UnknownTypeFlow unknownTypeFlow;
    descriptor: Lcom/oracle/graal/pointsto/flow/UnknownTypeFlow;
    flags: (0x0002) ACC_PRIVATE

  protected final com.oracle.graal.pointsto.meta.AnalysisUniverse universe;
    descriptor: Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.graal.pointsto.meta.AnalysisMetaAccess metaAccess;
    descriptor: Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.graal.pointsto.api.HostVM hostVM;
    descriptor: Lcom/oracle/graal/pointsto/api/HostVM;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private final com.oracle.graal.pointsto.constraints.UnsupportedFeatures unsupportedFeatures;
    descriptor: Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected final boolean trackTypeFlowInputs;
    descriptor: Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final boolean reportAnalysisStatistics;
    descriptor: Z
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private final com.oracle.graal.pointsto.util.CompletionExecutor executor;
    descriptor: Lcom/oracle/graal/pointsto/util/CompletionExecutor;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private java.util.concurrent.ConcurrentMap<com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow, java.lang.Boolean> unsafeLoads;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Lcom/oracle/graal/pointsto/flow/OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow;Ljava/lang/Boolean;>;

  private java.util.concurrent.ConcurrentMap<com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow, java.lang.Boolean> unsafeStores;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Lcom/oracle/graal/pointsto/flow/OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow;Ljava/lang/Boolean;>;

  public final java.util.concurrent.atomic.AtomicLong numParsedGraphs;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

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

  public final com.oracle.graal.pointsto.util.Timer typeFlowTimer;
    descriptor: Lcom/oracle/graal/pointsto/util/Timer;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final com.oracle.graal.pointsto.util.Timer checkObjectsTimer;
    descriptor: Lcom/oracle/graal/pointsto/util/Timer;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final com.oracle.graal.pointsto.util.Timer processFeaturesTimer;
    descriptor: Lcom/oracle/graal/pointsto/util/Timer;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final com.oracle.graal.pointsto.util.Timer analysisTimer;
    descriptor: Lcom/oracle/graal/pointsto/util/Timer;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  private com.oracle.graal.pointsto.ObjectScanner$ReusableSet scannedObjects;
    descriptor: Lcom/oracle/graal/pointsto/ObjectScanner$ReusableSet;
    flags: (0x0002) ACC_PRIVATE

  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 91
            ldc Lcom/oracle/graal/pointsto/BigBang;
            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.BigBang.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.graalvm.compiler.options.OptionValues, com.oracle.graal.pointsto.meta.AnalysisUniverse, com.oracle.graal.pointsto.meta.HostedProviders, com.oracle.graal.pointsto.api.HostVM, java.util.concurrent.ForkJoinPool, java.lang.Runnable, com.oracle.graal.pointsto.constraints.UnsupportedFeatures);
    descriptor: (Lorg/graalvm/compiler/options/OptionValues;Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/graal/pointsto/meta/HostedProviders;Lcom/oracle/graal/pointsto/api/HostVM;Ljava/util/concurrent/ForkJoinPool;Ljava/lang/Runnable;Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=8
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // org.graalvm.compiler.options.OptionValues options
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisUniverse universe
        start local 3 // com.oracle.graal.pointsto.meta.HostedProviders providers
        start local 4 // com.oracle.graal.pointsto.api.HostVM hostVM
        start local 5 // java.util.concurrent.ForkJoinPool executorService
        start local 6 // java.lang.Runnable heartbeatCallback
        start local 7 // com.oracle.graal.pointsto.constraints.UnsupportedFeatures unsupportedFeatures
         0: .line 131
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 123
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicLong
            dup
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
            putfield com.oracle.graal.pointsto.BigBang.numParsedGraphs:Ljava/util/concurrent/atomic/AtomicLong;
         2: .line 619
            aload 0 /* this */
            new com.oracle.graal.pointsto.ObjectScanner$ReusableSet
            dup
            invokespecial com.oracle.graal.pointsto.ObjectScanner$ReusableSet.<init>:()V
            putfield com.oracle.graal.pointsto.BigBang.scannedObjects:Lcom/oracle/graal/pointsto/ObjectScanner$ReusableSet;
         3: .line 133
            aload 0 /* this */
            aload 1 /* options */
            putfield com.oracle.graal.pointsto.BigBang.options:Lorg/graalvm/compiler/options/OptionValues;
         4: .line 134
            aload 0 /* this */
            new org.graalvm.compiler.printer.GraalDebugHandlersFactory
            dup
            aload 3 /* providers */
            invokevirtual com.oracle.graal.pointsto.meta.HostedProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            invokespecial org.graalvm.compiler.printer.GraalDebugHandlersFactory.<init>:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
            invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
            putfield com.oracle.graal.pointsto.BigBang.debugHandlerFactories:Ljava/util/List;
         5: .line 135
            aload 0 /* this */
            new org.graalvm.compiler.debug.DebugContext$Builder
            dup
            aload 1 /* options */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debugHandlerFactories:Ljava/util/List;
            invokespecial org.graalvm.compiler.debug.DebugContext$Builder.<init>:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;)V
            invokevirtual org.graalvm.compiler.debug.DebugContext$Builder.build:()Lorg/graalvm/compiler/debug/DebugContext;
            putfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
         6: .line 136
            aload 0 /* this */
            aload 4 /* hostVM */
            putfield com.oracle.graal.pointsto.BigBang.hostVM:Lcom/oracle/graal/pointsto/api/HostVM;
         7: .line 137
            aload 4 /* hostVM */
            invokeinterface com.oracle.graal.pointsto.api.HostVM.getImageName:()Ljava/lang/String;
            astore 8 /* imageName */
        start local 8 // java.lang.String imageName
         8: .line 138
            aload 0 /* this */
            new com.oracle.graal.pointsto.util.Timer
            dup
            aload 8 /* imageName */
            ldc "(typeflow)"
            iconst_0
            invokespecial com.oracle.graal.pointsto.util.Timer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            putfield com.oracle.graal.pointsto.BigBang.typeFlowTimer:Lcom/oracle/graal/pointsto/util/Timer;
         9: .line 139
            aload 0 /* this */
            new com.oracle.graal.pointsto.util.Timer
            dup
            aload 8 /* imageName */
            ldc "(objects)"
            iconst_0
            invokespecial com.oracle.graal.pointsto.util.Timer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            putfield com.oracle.graal.pointsto.BigBang.checkObjectsTimer:Lcom/oracle/graal/pointsto/util/Timer;
        10: .line 140
            aload 0 /* this */
            new com.oracle.graal.pointsto.util.Timer
            dup
            aload 8 /* imageName */
            ldc "(features)"
            iconst_0
            invokespecial com.oracle.graal.pointsto.util.Timer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            putfield com.oracle.graal.pointsto.BigBang.processFeaturesTimer:Lcom/oracle/graal/pointsto/util/Timer;
        11: .line 141
            aload 0 /* this */
            new com.oracle.graal.pointsto.util.Timer
            dup
            aload 8 /* imageName */
            ldc "analysis"
            iconst_1
            invokespecial com.oracle.graal.pointsto.util.Timer.<init>:(Ljava/lang/String;Ljava/lang/String;Z)V
            putfield com.oracle.graal.pointsto.BigBang.analysisTimer:Lcom/oracle/graal/pointsto/util/Timer;
        12: .line 143
            aload 0 /* this */
            aload 2 /* universe */
            putfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
        13: .line 144
            aload 0 /* this */
            aload 3 /* providers */
            invokevirtual com.oracle.graal.pointsto.meta.HostedProviders.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMetaAccess
            putfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
        14: .line 145
            aload 0 /* this */
            aload 3 /* providers */
            invokevirtual com.oracle.graal.pointsto.meta.HostedProviders.getReplacements:()Lorg/graalvm/compiler/nodes/spi/Replacements;
            putfield com.oracle.graal.pointsto.BigBang.replacements:Lorg/graalvm/compiler/nodes/spi/Replacements;
        15: .line 146
            aload 0 /* this */
            aload 7 /* unsupportedFeatures */
            putfield com.oracle.graal.pointsto.BigBang.unsupportedFeatures:Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
        16: .line 147
            aload 0 /* this */
            aload 3 /* providers */
            putfield com.oracle.graal.pointsto.BigBang.providers:Lcom/oracle/graal/pointsto/meta/HostedProviders;
        17: .line 149
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Ljava/lang/Object;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            putfield com.oracle.graal.pointsto.BigBang.objectType:Lcom/oracle/graal/pointsto/meta/AnalysisType;
        18: .line 154
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.objectType:Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 0 /* this */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getTypeFlow:(Lcom/oracle/graal/pointsto/BigBang;Z)Lcom/oracle/graal/pointsto/flow/AllInstantiatedTypeFlow;
            pop
        19: .line 155
            aload 0 /* this */
            new com.oracle.graal.pointsto.flow.AllSynchronizedTypeFlow
            dup
            invokespecial com.oracle.graal.pointsto.flow.AllSynchronizedTypeFlow.<init>:()V
            putfield com.oracle.graal.pointsto.BigBang.allSynchronizedTypeFlow:Lcom/oracle/graal/pointsto/flow/TypeFlow;
        20: .line 156
            aload 0 /* this */
            new com.oracle.graal.pointsto.flow.UnknownTypeFlow
            dup
            invokespecial com.oracle.graal.pointsto.flow.UnknownTypeFlow.<init>:()V
            putfield com.oracle.graal.pointsto.BigBang.unknownTypeFlow:Lcom/oracle/graal/pointsto/flow/UnknownTypeFlow;
        21: .line 158
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.api.PointstoOptions.TrackInputFlows:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            putfield com.oracle.graal.pointsto.BigBang.trackTypeFlowInputs:Z
        22: .line 159
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.api.PointstoOptions.PrintPointsToStatistics:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            putfield com.oracle.graal.pointsto.BigBang.reportAnalysisStatistics:Z
        23: .line 160
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.reportAnalysisStatistics:Z
            ifeq 25
        24: .line 161
            aload 0 /* this */
            invokestatic com.oracle.graal.pointsto.typestate.PointsToStats.init:(Lcom/oracle/graal/pointsto/BigBang;)V
        25: .line 164
      StackMap locals: com.oracle.graal.pointsto.BigBang org.graalvm.compiler.options.OptionValues com.oracle.graal.pointsto.meta.AnalysisUniverse com.oracle.graal.pointsto.meta.HostedProviders com.oracle.graal.pointsto.api.HostVM java.util.concurrent.ForkJoinPool java.lang.Runnable com.oracle.graal.pointsto.constraints.UnsupportedFeatures java.lang.String
      StackMap stack:
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.oracle.graal.pointsto.BigBang.unsafeLoads:Ljava/util/concurrent/ConcurrentMap;
        26: .line 165
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.oracle.graal.pointsto.BigBang.unsafeStores:Ljava/util/concurrent/ConcurrentMap;
        27: .line 167
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.api.PointstoOptions.ProfileAnalysisOperations:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 28
            new com.oracle.graal.pointsto.BigBang$AnalysisTiming
            dup
            aload 0 /* this */
            invokespecial com.oracle.graal.pointsto.BigBang$AnalysisTiming.<init>:(Lcom/oracle/graal/pointsto/BigBang;)V
            goto 29
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.BigBang
        28: aconst_null
      StackMap locals: com.oracle.graal.pointsto.BigBang org.graalvm.compiler.options.OptionValues com.oracle.graal.pointsto.meta.AnalysisUniverse com.oracle.graal.pointsto.meta.HostedProviders com.oracle.graal.pointsto.api.HostVM java.util.concurrent.ForkJoinPool java.lang.Runnable com.oracle.graal.pointsto.constraints.UnsupportedFeatures java.lang.String
      StackMap stack: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.BigBang$AnalysisTiming
        29: putfield com.oracle.graal.pointsto.BigBang.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
        30: .line 168
            aload 0 /* this */
            new com.oracle.graal.pointsto.util.CompletionExecutor
            dup
            aload 0 /* this */
            aload 5 /* executorService */
            aload 6 /* heartbeatCallback */
            invokespecial com.oracle.graal.pointsto.util.CompletionExecutor.<init>:(Lcom/oracle/graal/pointsto/BigBang;Ljava/util/concurrent/ForkJoinPool;Ljava/lang/Runnable;)V
            putfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
        31: .line 169
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.init:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;)V
        32: .line 170
            aload 0 /* this */
            aload 6 /* heartbeatCallback */
            putfield com.oracle.graal.pointsto.BigBang.heartbeatCallback:Ljava/lang/Runnable;
        33: .line 172
            aload 0 /* this */
            getstatic com.oracle.graal.pointsto.api.PointstoOptions.ExhaustiveHeapScan:Lorg/graalvm/compiler/options/OptionKey;
            aload 1 /* options */
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 35
        34: .line 173
            invokestatic com.oracle.graal.pointsto.HeapScanningPolicy.scanAll:()Lcom/oracle/graal/pointsto/HeapScanningPolicy;
            goto 36
        35: .line 174
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.BigBang
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.BigBang.skippedHeapTypes:()[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokestatic com.oracle.graal.pointsto.HeapScanningPolicy.skipTypes:([Lcom/oracle/graal/pointsto/meta/AnalysisType;)Lcom/oracle/graal/pointsto/HeapScanningPolicy;
        36: .line 172
      StackMap locals: com.oracle.graal.pointsto.BigBang org.graalvm.compiler.options.OptionValues com.oracle.graal.pointsto.meta.AnalysisUniverse com.oracle.graal.pointsto.meta.HostedProviders com.oracle.graal.pointsto.api.HostVM java.util.concurrent.ForkJoinPool java.lang.Runnable com.oracle.graal.pointsto.constraints.UnsupportedFeatures java.lang.String
      StackMap stack: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.HeapScanningPolicy
            putfield com.oracle.graal.pointsto.BigBang.heapScanningPolicy:Lcom/oracle/graal/pointsto/HeapScanningPolicy;
        37: .line 175
            return
        end local 8 // java.lang.String imageName
        end local 7 // com.oracle.graal.pointsto.constraints.UnsupportedFeatures unsupportedFeatures
        end local 6 // java.lang.Runnable heartbeatCallback
        end local 5 // java.util.concurrent.ForkJoinPool executorService
        end local 4 // com.oracle.graal.pointsto.api.HostVM hostVM
        end local 3 // com.oracle.graal.pointsto.meta.HostedProviders providers
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisUniverse universe
        end local 1 // org.graalvm.compiler.options.OptionValues options
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   38     0                 this  Lcom/oracle/graal/pointsto/BigBang;
            0   38     1              options  Lorg/graalvm/compiler/options/OptionValues;
            0   38     2             universe  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   38     3            providers  Lcom/oracle/graal/pointsto/meta/HostedProviders;
            0   38     4               hostVM  Lcom/oracle/graal/pointsto/api/HostVM;
            0   38     5      executorService  Ljava/util/concurrent/ForkJoinPool;
            0   38     6    heartbeatCallback  Ljava/lang/Runnable;
            0   38     7  unsupportedFeatures  Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
            8   38     8            imageName  Ljava/lang/String;
    MethodParameters:
                     Name  Flags
      options              
      universe             
      providers            
      hostVM               
      executorService      
      heartbeatCallback    
      unsupportedFeatures  

  public com.oracle.graal.pointsto.meta.AnalysisType[] skippedHeapTypes();
    descriptor: ()[Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 178
            iconst_1
            anewarray com.oracle.graal.pointsto.meta.AnalysisType
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Ljava/lang/String;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aastore
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public java.lang.Runnable getHeartbeatCallback();
    descriptor: ()Ljava/lang/Runnable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 182
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.heartbeatCallback:Ljava/lang/Runnable;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public boolean trackTypeFlowInputs();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 186
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.trackTypeFlowInputs:Z
            ireturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public boolean reportAnalysisStatistics();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 190
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.reportAnalysisStatistics:Z
            ireturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public org.graalvm.compiler.options.OptionValues getOptions();
    descriptor: ()Lorg/graalvm/compiler/options/OptionValues;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 194
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.options:Lorg/graalvm/compiler/options/OptionValues;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public java.util.List<org.graalvm.compiler.debug.DebugHandlersFactory> getDebugHandlerFactories();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 198
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debugHandlerFactories:Ljava/util/List;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
    Signature: ()Ljava/util/List<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;

  public org.graalvm.compiler.debug.DebugContext getDebug();
    descriptor: ()Lorg/graalvm/compiler/debug/DebugContext;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 202
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder createMethodTypeFlowBuilder(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.flow.MethodTypeFlow);
    descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/MethodTypeFlow;)Lcom/oracle/graal/pointsto/flow/MethodTypeFlowBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.BigBang bb
        start local 2 // com.oracle.graal.pointsto.flow.MethodTypeFlow methodFlow
         0: .line 206
            new com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder
            dup
            aload 1 /* bb */
            aload 2 /* methodFlow */
            invokespecial com.oracle.graal.pointsto.flow.MethodTypeFlowBuilder.<init>:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/MethodTypeFlow;)V
            areturn
        end local 2 // com.oracle.graal.pointsto.flow.MethodTypeFlow methodFlow
        end local 1 // com.oracle.graal.pointsto.BigBang bb
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lcom/oracle/graal/pointsto/BigBang;
            0    1     1          bb  Lcom/oracle/graal/pointsto/BigBang;
            0    1     2  methodFlow  Lcom/oracle/graal/pointsto/flow/MethodTypeFlow;
    MethodParameters:
            Name  Flags
      bb          
      methodFlow  

  public void registerUnsafeLoad(com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow);
    descriptor: (Lcom/oracle/graal/pointsto/flow/OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow unsafeLoad
         0: .line 210
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.unsafeLoads:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* unsafeLoad */
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 211
            return
        end local 1 // com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow unsafeLoad
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/oracle/graal/pointsto/BigBang;
            0    2     1  unsafeLoad  Lcom/oracle/graal/pointsto/flow/OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow;
    MethodParameters:
            Name  Flags
      unsafeLoad  

  public void registerUnsafeStore(com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow);
    descriptor: (Lcom/oracle/graal/pointsto/flow/OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow unsafeStore
         0: .line 214
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.unsafeStores:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* unsafeStore */
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 215
            return
        end local 1 // com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow unsafeStore
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/oracle/graal/pointsto/BigBang;
            0    2     1  unsafeStore  Lcom/oracle/graal/pointsto/flow/OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow;
    MethodParameters:
             Name  Flags
      unsafeStore  

  public void reportIllegalUnknownUse(com.oracle.graal.pointsto.meta.AnalysisMethod, jdk.vm.ci.code.BytecodePosition, java.lang.String);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Ljdk/vm/ci/code/BytecodePosition;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisMethod method
        start local 2 // jdk.vm.ci.code.BytecodePosition source
        start local 3 // java.lang.String message
         0: .line 218
            new java.lang.StringBuilder
            dup
            ldc "Location: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* source */
            ifnonnull 1
            ldc "[unknown]"
            goto 2
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         1: aload 2 /* source */
            invokevirtual jdk.vm.ci.code.BytecodePosition.getMethod:()Ljdk/vm/ci/meta/ResolvedJavaMethod;
            aload 2 /* source */
            invokevirtual jdk.vm.ci.code.BytecodePosition.getBCI:()I
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.asStackTraceElement:(I)Ljava/lang/StackTraceElement;
            invokevirtual java.lang.StackTraceElement.toString:()Ljava/lang/String;
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisMethod jdk.vm.ci.code.BytecodePosition java.lang.String
      StackMap stack: java.lang.StringBuilder java.lang.String
         2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* trace */
        start local 4 // java.lang.String trace
         3: .line 219
            new java.lang.StringBuilder
            dup
            aload 4 /* trace */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Call path:"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* trace */
         4: .line 220
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.BigBang.getUnsupportedFeatures:()Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
            aload 1 /* method */
            ldc "%H.%n(%p)"
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            aload 1 /* method */
            aload 3 /* message */
            aload 4 /* trace */
            invokevirtual com.oracle.graal.pointsto.constraints.UnsupportedFeatures.addMessage:(Ljava/lang/String;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Ljava/lang/String;Ljava/lang/String;)V
         5: .line 221
            return
        end local 4 // java.lang.String trace
        end local 3 // java.lang.String message
        end local 2 // jdk.vm.ci.code.BytecodePosition source
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisMethod method
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Lcom/oracle/graal/pointsto/BigBang;
            0    6     1   method  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            0    6     2   source  Ljdk/vm/ci/code/BytecodePosition;
            0    6     3  message  Ljava/lang/String;
            3    6     4    trace  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      method   
      source   
      message  

  public void forceUnsafeUpdate(com.oracle.graal.pointsto.meta.AnalysisField);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisField;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisField field
         0: .line 237
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.unsafeLoads:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisField top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow
            astore 2 /* unsafeLoad */
        start local 2 // com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow unsafeLoad
         2: .line 239
            aload 2 /* unsafeLoad */
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow.initClone:(Lcom/oracle/graal/pointsto/BigBang;)V
         3: .line 246
            aload 0 /* this */
            aload 2 /* unsafeLoad */
            invokevirtual com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow.receiver:()Lcom/oracle/graal/pointsto/flow/TypeFlow;
            invokevirtual com.oracle.graal.pointsto.BigBang.postFlow:(Lcom/oracle/graal/pointsto/flow/TypeFlow;)V
        end local 2 // com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow unsafeLoad
         4: .line 237
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 250
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.unsafeStores:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.keySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals:
      StackMap stack:
         6: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow
            astore 2 /* unsafeStore */
        start local 2 // com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow unsafeStore
         7: .line 252
            aload 2 /* unsafeStore */
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow.initClone:(Lcom/oracle/graal/pointsto/BigBang;)V
         8: .line 259
            aload 0 /* this */
            aload 2 /* unsafeStore */
            invokevirtual com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow.receiver:()Lcom/oracle/graal/pointsto/flow/TypeFlow;
            invokevirtual com.oracle.graal.pointsto.BigBang.postFlow:(Lcom/oracle/graal/pointsto/flow/TypeFlow;)V
        end local 2 // com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow unsafeStore
         9: .line 250
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        10: .line 261
            return
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisField field
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lcom/oracle/graal/pointsto/BigBang;
            0   11     1        field  Lcom/oracle/graal/pointsto/meta/AnalysisField;
            2    4     2   unsafeLoad  Lcom/oracle/graal/pointsto/flow/OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow;
            7    9     2  unsafeStore  Lcom/oracle/graal/pointsto/flow/OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow;
    MethodParameters:
       Name  Flags
      field  

  public boolean trackConcreteAnalysisObjects(com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisType type
         0: .line 269
            iconst_1
            ireturn
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisType type
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
            0    1     1  type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
      Name  Flags
      type  

  public boolean isCallAllowed(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.meta.AnalysisMethod, com.oracle.graal.pointsto.meta.AnalysisMethod, org.graalvm.compiler.graph.NodeSourcePosition);
    descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Lorg/graalvm/compiler/graph/NodeSourcePosition;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=5, args_size=5
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.BigBang bb
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod caller
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisMethod target
        start local 4 // org.graalvm.compiler.graph.NodeSourcePosition srcPosition
         0: .line 275
            iconst_1
            ireturn
        end local 4 // org.graalvm.compiler.graph.NodeSourcePosition srcPosition
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisMethod target
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod caller
        end local 1 // com.oracle.graal.pointsto.BigBang bb
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/oracle/graal/pointsto/BigBang;
            0    1     1           bb  Lcom/oracle/graal/pointsto/BigBang;
            0    1     2       caller  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            0    1     3       target  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            0    1     4  srcPosition  Lorg/graalvm/compiler/graph/NodeSourcePosition;
    MethodParameters:
             Name  Flags
      bb           
      caller       
      target       
      srcPosition  

  public void cleanupAfterAnalysis();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 279
            aload 0 /* this */
            aconst_null
            putfield com.oracle.graal.pointsto.BigBang.allSynchronizedTypeFlow:Lcom/oracle/graal/pointsto/flow/TypeFlow;
         1: .line 280
            aload 0 /* this */
            aconst_null
            putfield com.oracle.graal.pointsto.BigBang.unsafeLoads:Ljava/util/concurrent/ConcurrentMap;
         2: .line 281
            aload 0 /* this */
            aconst_null
            putfield com.oracle.graal.pointsto.BigBang.unsafeStores:Ljava/util/concurrent/ConcurrentMap;
         3: .line 282
            aload 0 /* this */
            aconst_null
            putfield com.oracle.graal.pointsto.BigBang.unknownTypeFlow:Lcom/oracle/graal/pointsto/flow/UnknownTypeFlow;
         4: .line 283
            aload 0 /* this */
            aconst_null
            putfield com.oracle.graal.pointsto.BigBang.scannedObjects:Lcom/oracle/graal/pointsto/ObjectScanner$ReusableSet;
         5: .line 285
            getstatic com.oracle.graal.pointsto.BigBang$ConstantObjectsProfiler.constantTypes:Ljava/util/concurrent/ConcurrentHashMap;
            invokevirtual java.util.concurrent.ConcurrentHashMap.clear:()V
         6: .line 287
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokedynamic accept()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/meta/AnalysisType.cleanupAfterAnalysis()V (5)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         7: .line 288
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getFields:()Ljava/util/Collection;
            invokedynamic accept()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/meta/AnalysisField.cleanupAfterAnalysis()V (5)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisField;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         8: .line 289
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getMethods:()Ljava/util/Collection;
            invokedynamic accept()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/meta/AnalysisMethod.cleanupAfterAnalysis()V (5)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)V
            invokeinterface java.util.Collection.forEach:(Ljava/util/function/Consumer;)V
         9: .line 290
            return
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.AnalysisPolicy analysisPolicy();
    descriptor: ()Lcom/oracle/graal/pointsto/AnalysisPolicy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 293
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.analysisPolicy:()Lcom/oracle/graal/pointsto/AnalysisPolicy;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.flow.context.AnalysisContextPolicy<com.oracle.graal.pointsto.flow.context.AnalysisContext> contextPolicy();
    descriptor: ()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 297
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.analysisPolicy:()Lcom/oracle/graal/pointsto/AnalysisPolicy;
            invokevirtual com.oracle.graal.pointsto.AnalysisPolicy.getContextPolicy:()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
    Signature: ()Lcom/oracle/graal/pointsto/flow/context/AnalysisContextPolicy<Lcom/oracle/graal/pointsto/flow/context/AnalysisContext;>;

  public com.oracle.graal.pointsto.meta.AnalysisUniverse getUniverse();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 301
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.HostedProviders getProviders();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/HostedProviders;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 305
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.providers:Lcom/oracle/graal/pointsto/meta/HostedProviders;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisMetaAccess getMetaAccess();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 309
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public org.graalvm.compiler.nodes.spi.Replacements getReplacements();
    descriptor: ()Lorg/graalvm/compiler/nodes/spi/Replacements;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 313
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.replacements:Lorg/graalvm/compiler/nodes/spi/Replacements;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.constraints.UnsupportedFeatures getUnsupportedFeatures();
    descriptor: ()Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 317
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.unsupportedFeatures:Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType lookup(jdk.vm.ci.meta.JavaType);
    descriptor: (Ljdk/vm/ci/meta/JavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // jdk.vm.ci.meta.JavaType type
         0: .line 321
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookup:(Ljdk/vm/ci/meta/JavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 1 // jdk.vm.ci.meta.JavaType type
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
            0    1     1  type  Ljdk/vm/ci/meta/JavaType;
    MethodParameters:
      Name  Flags
      type  

  public com.oracle.graal.pointsto.meta.AnalysisType getObjectType();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 325
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Ljava/lang/Object;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType getObjectArrayType();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 329
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc [Ljava/lang/Object;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType getGraalNodeType();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 333
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Lorg/graalvm/compiler/graph/Node;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType getGraalNodeListType();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 337
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Lorg/graalvm/compiler/graph/NodeList;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType getThrowableType();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 341
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Ljava/lang/Throwable;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType getThreadType();
    descriptor: ()Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 345
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            ldc Ljava/lang/Thread;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisType forClass(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.Class clazz
         0: .line 349
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 1 /* clazz */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/oracle/graal/pointsto/BigBang;
            0    1     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
       Name  Flags
      clazz  

  public com.oracle.graal.pointsto.meta.AnalysisType forClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.String className
         0: .line 354
            aload 0 /* this */
            aload 1 /* className */
            invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
            invokevirtual com.oracle.graal.pointsto.BigBang.forClass:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
         1: areturn
         2: .line 355
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            astore 2 /* e */
        start local 2 // java.lang.ClassNotFoundException e
         3: .line 356
            aload 2 /* e */
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // java.lang.ClassNotFoundException e
        end local 1 // java.lang.String className
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lcom/oracle/graal/pointsto/BigBang;
            0    4     1  className  Ljava/lang/String;
            3    4     2          e  Ljava/lang/ClassNotFoundException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.ClassNotFoundException
    MethodParameters:
           Name  Flags
      className  

  public com.oracle.graal.pointsto.flow.TypeFlow<?> getAllInstantiatedTypeFlow();
    descriptor: ()Lcom/oracle/graal/pointsto/flow/TypeFlow;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 361
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.objectType:Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 0 /* this */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getTypeFlow:(Lcom/oracle/graal/pointsto/BigBang;Z)Lcom/oracle/graal/pointsto/flow/AllInstantiatedTypeFlow;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
    Signature: ()Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;

  public com.oracle.graal.pointsto.flow.TypeFlow<?> getUnknownTypeFlow();
    descriptor: ()Lcom/oracle/graal/pointsto/flow/TypeFlow;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 365
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.unknownTypeFlow:Lcom/oracle/graal/pointsto/flow/UnknownTypeFlow;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
    Signature: ()Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;

  public com.oracle.graal.pointsto.flow.TypeFlow<?> getAllSynchronizedTypeFlow();
    descriptor: ()Lcom/oracle/graal/pointsto/flow/TypeFlow;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 369
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.allSynchronizedTypeFlow:Lcom/oracle/graal/pointsto/flow/TypeFlow;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;
    Signature: ()Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;

  public com.oracle.graal.pointsto.typestate.TypeState getAllSynchronizedTypeState();
    descriptor: ()Lcom/oracle/graal/pointsto/typestate/TypeState;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 378
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.allSynchronizedTypeFlow:Lcom/oracle/graal/pointsto/flow/TypeFlow;
            invokevirtual com.oracle.graal.pointsto.flow.TypeFlow.isSaturated:()Z
            ifeq 2
         1: .line 379
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.BigBang.getAllInstantiatedTypeFlow:()Lcom/oracle/graal/pointsto/flow/TypeFlow;
            invokevirtual com.oracle.graal.pointsto.flow.TypeFlow.getState:()Lcom/oracle/graal/pointsto/typestate/TypeState;
            areturn
         2: .line 381
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.allSynchronizedTypeFlow:Lcom/oracle/graal/pointsto/flow/TypeFlow;
            invokevirtual com.oracle.graal.pointsto.flow.TypeFlow.getState:()Lcom/oracle/graal/pointsto/typestate/TypeState;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public boolean executorIsStarted();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 385
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.isStarted:()Z
            ireturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.meta.AnalysisMethod addRootMethod(java.lang.reflect.Executable);
    descriptor: (Ljava/lang/reflect/Executable;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.reflect.Executable method
         0: .line 389
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaMethod:(Ljava/lang/reflect/Executable;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            astore 2 /* aMethod */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod aMethod
         1: .line 390
            aload 0 /* this */
            aload 2 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.BigBang.addRootMethod:(Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            pop
         2: .line 391
            aload 2 /* aMethod */
            areturn
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod aMethod
        end local 1 // java.lang.reflect.Executable method
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/oracle/graal/pointsto/BigBang;
            0    3     1   method  Ljava/lang/reflect/Executable;
            1    3     2  aMethod  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    MethodParameters:
        Name  Flags
      method  

  public com.oracle.graal.pointsto.meta.AnalysisMethod addRootMethod(com.oracle.graal.pointsto.meta.AnalysisMethod);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisMethod aMethod
         0: .line 396
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.isRootMethod:()Z
            ifeq 2
         1: .line 397
            aload 1 /* aMethod */
            areturn
         2: .line 399
      StackMap locals:
      StackMap stack:
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.registerAsRootMethod:()V
         3: .line 401
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getTypeFlow:()Lcom/oracle/graal/pointsto/flow/MethodTypeFlow;
            astore 2 /* methodFlow */
        start local 2 // com.oracle.graal.pointsto.flow.MethodTypeFlow methodFlow
         4: .line 402
            aconst_null
            astore 3
            aconst_null
            astore 4
         5: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "add root method %s"
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getName:()Ljava/lang/String;
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
            astore 5 /* indent */
        start local 5 // org.graalvm.compiler.debug.Indent indent
         6: .line 403
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
            istore 6 /* isStatic */
        start local 6 // boolean isStatic
         7: .line 404
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getSignature:()Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;
            iload 6 /* isStatic */
            ifeq 8
            iconst_0
            goto 9
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisMethod com.oracle.graal.pointsto.flow.MethodTypeFlow java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int
      StackMap stack: com.oracle.graal.pointsto.infrastructure.WrappedSignature
         8: iconst_1
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisMethod com.oracle.graal.pointsto.flow.MethodTypeFlow java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int
      StackMap stack: com.oracle.graal.pointsto.infrastructure.WrappedSignature int
         9: invokevirtual com.oracle.graal.pointsto.infrastructure.WrappedSignature.getParameterCount:(Z)I
            istore 7 /* paramCount */
        start local 7 // int paramCount
        10: .line 405
            iconst_0
            istore 8 /* offset */
        start local 8 // int offset
        11: .line 406
            iload 6 /* isStatic */
            ifne 14
        12: .line 407
            aload 2 /* methodFlow */
            aload 0 /* this */
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getDeclaringClass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokevirtual com.oracle.graal.pointsto.flow.MethodTypeFlow.setInitialReceiverFlow:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
        13: .line 408
            iconst_1
            istore 8 /* offset */
        14: .line 410
      StackMap locals: int int
      StackMap stack:
            iload 8 /* offset */
            istore 9 /* i */
        start local 9 // int i
        15: goto 20
        16: .line 411
      StackMap locals: int
      StackMap stack:
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getSignature:()Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;
            iload 9 /* i */
            iload 8 /* offset */
            isub
            aload 1 /* aMethod */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getDeclaringClass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokevirtual com.oracle.graal.pointsto.infrastructure.WrappedSignature.getParameterType:(ILjdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            astore 10 /* declaredParamType */
        start local 10 // com.oracle.graal.pointsto.meta.AnalysisType declaredParamType
        17: .line 412
            aload 10 /* declaredParamType */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
            if_acmpne 19
        18: .line 413
            aload 2 /* methodFlow */
            aload 0 /* this */
            aload 10 /* declaredParamType */
            iload 9 /* i */
            invokevirtual com.oracle.graal.pointsto.flow.MethodTypeFlow.setInitialParameterFlow:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisType;I)V
        end local 10 // com.oracle.graal.pointsto.meta.AnalysisType declaredParamType
        19: .line 410
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 9 /* i */
            iload 7 /* paramCount */
            if_icmplt 16
        end local 9 // int i
        end local 8 // int offset
        end local 7 // int paramCount
        end local 6 // boolean isStatic
        21: .line 416
            aload 5 /* indent */
            ifnull 27
            aload 5 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 27
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisMethod com.oracle.graal.pointsto.flow.MethodTypeFlow java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        22: astore 3
            aload 5 /* indent */
            ifnull 23
            aload 5 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 5 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        23: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: astore 4
            aload 3
            ifnonnull 25
            aload 4
            astore 3
            goto 26
      StackMap locals:
      StackMap stack:
        25: aload 3
            aload 4
            if_acmpeq 26
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        26: aload 3
            athrow
        27: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new com.oracle.graal.pointsto.BigBang$1
            dup
            aload 0 /* this */
            aload 2 /* methodFlow */
            invokespecial com.oracle.graal.pointsto.BigBang$1.<init>:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/MethodTypeFlow;)V
            invokevirtual com.oracle.graal.pointsto.BigBang.postTask:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
        28: .line 431
            aload 1 /* aMethod */
            areturn
        end local 2 // com.oracle.graal.pointsto.flow.MethodTypeFlow methodFlow
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisMethod aMethod
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   29     0               this  Lcom/oracle/graal/pointsto/BigBang;
            0   29     1            aMethod  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            4   29     2         methodFlow  Lcom/oracle/graal/pointsto/flow/MethodTypeFlow;
            6   23     5             indent  Lorg/graalvm/compiler/debug/Indent;
            7   21     6           isStatic  Z
           10   21     7         paramCount  I
           11   21     8             offset  I
           15   21     9                  i  I
           17   19    10  declaredParamType  Lcom/oracle/graal/pointsto/meta/AnalysisType;
      Exception table:
        from    to  target  type
           6    21      22  any
           5    24      24  any
    MethodParameters:
         Name  Flags
      aMethod  

  public com.oracle.graal.pointsto.meta.AnalysisType addSystemClass(java.lang.Class<?>, boolean, boolean);
    descriptor: (Ljava/lang/Class;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.Class clazz
        start local 2 // boolean addFields
        start local 3 // boolean addArrayClass
         0: .line 435
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 1 /* clazz */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            astore 4 /* type */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisType type
         1: .line 436
            aload 4 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.registerAsReachable:()V
         2: .line 437
            aload 0 /* this */
            aload 4 /* type */
            iload 2 /* addFields */
            iload 3 /* addArrayClass */
            invokevirtual com.oracle.graal.pointsto.BigBang.addSystemClass:(Lcom/oracle/graal/pointsto/meta/AnalysisType;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisType type
        end local 3 // boolean addArrayClass
        end local 2 // boolean addFields
        end local 1 // java.lang.Class clazz
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lcom/oracle/graal/pointsto/BigBang;
            0    3     1          clazz  Ljava/lang/Class<*>;
            0    3     2      addFields  Z
            0    3     3  addArrayClass  Z
            1    3     4           type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
    Signature: (Ljava/lang/Class<*>;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
               Name  Flags
      clazz          
      addFields      
      addArrayClass  

  private com.oracle.graal.pointsto.meta.AnalysisType addSystemClass(com.oracle.graal.pointsto.meta.AnalysisType, boolean, boolean);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisType;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=12, args_size=4
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisType type
        start local 2 // boolean addFields
        start local 3 // boolean addArrayClass
         0: .line 442
            aconst_null
            astore 4
            aconst_null
            astore 5
         1: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "add system class %s"
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getName:()Ljava/lang/String;
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
            astore 6 /* indent */
        start local 6 // org.graalvm.compiler.debug.Indent indent
         2: .line 443
            aload 1 /* type */
            iconst_0
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getInstanceFields:(Z)[Lcom/oracle/graal/pointsto/meta/AnalysisField;
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 9
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisType int int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top int int com.oracle.graal.pointsto.meta.AnalysisField[]
      StackMap stack:
         3: aload 10
            iload 8
            aaload
            astore 7 /* field */
        start local 7 // com.oracle.graal.pointsto.meta.AnalysisField field
         4: .line 444
            iload 2 /* addFields */
            ifeq 6
         5: .line 445
            aload 7 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.registerAsAccessed:()V
         6: .line 451
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisType int int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent com.oracle.graal.pointsto.meta.AnalysisField int int com.oracle.graal.pointsto.meta.AnalysisField[]
      StackMap stack:
            aload 7 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 0 /* this */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getTypeFlow:(Lcom/oracle/graal/pointsto/BigBang;Z)Lcom/oracle/graal/pointsto/flow/AllInstantiatedTypeFlow;
            astore 11 /* fieldDeclaredTypeFlow */
        start local 11 // com.oracle.graal.pointsto.flow.TypeFlow fieldDeclaredTypeFlow
         7: .line 452
            aload 11 /* fieldDeclaredTypeFlow */
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getContextInsensitiveAnalysisObject:()Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;
            aload 0 /* this */
            aload 7 /* field */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.flow.context.object.AnalysisObject.getInstanceFieldFlow:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisField;Z)Lcom/oracle/graal/pointsto/flow/FieldTypeFlow;
            invokevirtual com.oracle.graal.pointsto.flow.TypeFlow.addUse:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/TypeFlow;)Z
            pop
        end local 11 // com.oracle.graal.pointsto.flow.TypeFlow fieldDeclaredTypeFlow
        end local 7 // com.oracle.graal.pointsto.meta.AnalysisField field
         8: .line 443
            iinc 8 1
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisType int int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent top int int com.oracle.graal.pointsto.meta.AnalysisField[]
      StackMap stack:
         9: iload 8
            iload 9
            if_icmplt 3
        10: .line 454
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getSuperclass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            ifnull 12
        11: .line 455
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getSuperclass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            iload 2 /* addFields */
            iload 3 /* addArrayClass */
            invokevirtual com.oracle.graal.pointsto.BigBang.addSystemClass:(Lcom/oracle/graal/pointsto/meta/AnalysisType;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            pop
        12: .line 457
      StackMap locals: com.oracle.graal.pointsto.BigBang com.oracle.graal.pointsto.meta.AnalysisType int int java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack:
            iload 3 /* addArrayClass */
            ifeq 14
        13: .line 458
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getArrayClass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            iconst_0
            iconst_0
            invokevirtual com.oracle.graal.pointsto.BigBang.addSystemClass:(Lcom/oracle/graal/pointsto/meta/AnalysisType;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            pop
        14: .line 460
      StackMap locals:
      StackMap stack:
            aload 6 /* indent */
            ifnull 20
            aload 6 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 20
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 4
            aload 6 /* indent */
            ifnull 16
            aload 6 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 6 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        16: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        17: astore 5
            aload 4
            ifnonnull 18
            aload 5
            astore 4
            goto 19
      StackMap locals:
      StackMap stack:
        18: aload 4
            aload 5
            if_acmpeq 19
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        19: aload 4
            athrow
        20: .line 461
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            areturn
        end local 3 // boolean addArrayClass
        end local 2 // boolean addFields
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisType type
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   21     0                   this  Lcom/oracle/graal/pointsto/BigBang;
            0   21     1                   type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            0   21     2              addFields  Z
            0   21     3          addArrayClass  Z
            2   16     6                 indent  Lorg/graalvm/compiler/debug/Indent;
            4    8     7                  field  Lcom/oracle/graal/pointsto/meta/AnalysisField;
            7    8    11  fieldDeclaredTypeFlow  Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;
      Exception table:
        from    to  target  type
           2    14      15  any
           1    17      17  any
    MethodParameters:
               Name  Flags
      type           
      addFields      
      addArrayClass  

  public com.oracle.graal.pointsto.meta.AnalysisType addSystemField(java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=3
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String fieldName
         0: .line 466
            aload 0 /* this */
            aload 1 /* clazz */
            iconst_0
            iconst_0
            invokevirtual com.oracle.graal.pointsto.BigBang.addSystemClass:(Ljava/lang/Class;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            astore 3 /* type */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
         1: .line 467
            aload 3 /* type */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getInstanceFields:(Z)[Lcom/oracle/graal/pointsto/meta/AnalysisField;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 17
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Class java.lang.String com.oracle.graal.pointsto.meta.AnalysisType top int int com.oracle.graal.pointsto.meta.AnalysisField[]
      StackMap stack:
         2: aload 7
            iload 5
            aaload
            astore 4 /* field */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisField field
         3: .line 468
            aload 4 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getName:()Ljava/lang/String;
            aload 2 /* fieldName */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 16
         4: .line 469
            aconst_null
            astore 8
            aconst_null
            astore 9
         5: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "add system field %s in class %s"
            aload 2 /* fieldName */
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
            astore 10 /* indent */
        start local 10 // org.graalvm.compiler.debug.Indent indent
         6: .line 470
            aload 4 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.registerAsAccessed:()V
         7: .line 475
            aload 4 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 0 /* this */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getTypeFlow:(Lcom/oracle/graal/pointsto/BigBang;Z)Lcom/oracle/graal/pointsto/flow/AllInstantiatedTypeFlow;
            astore 11 /* fieldDeclaredTypeFlow */
        start local 11 // com.oracle.graal.pointsto.flow.TypeFlow fieldDeclaredTypeFlow
         8: .line 476
            aload 11 /* fieldDeclaredTypeFlow */
            aload 0 /* this */
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getContextInsensitiveAnalysisObject:()Lcom/oracle/graal/pointsto/flow/context/object/AnalysisObject;
            aload 0 /* this */
            aload 4 /* field */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.flow.context.object.AnalysisObject.getInstanceFieldFlow:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisField;Z)Lcom/oracle/graal/pointsto/flow/FieldTypeFlow;
            invokevirtual com.oracle.graal.pointsto.flow.TypeFlow.addUse:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/TypeFlow;)Z
            pop
        end local 11 // com.oracle.graal.pointsto.flow.TypeFlow fieldDeclaredTypeFlow
         9: .line 477
            aload 10 /* indent */
            ifnull 15
            aload 10 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 15
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Class java.lang.String com.oracle.graal.pointsto.meta.AnalysisType com.oracle.graal.pointsto.meta.AnalysisField int int com.oracle.graal.pointsto.meta.AnalysisField[] java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        10: astore 8
            aload 10 /* indent */
            ifnull 11
            aload 10 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 10 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        11: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        12: astore 9
            aload 8
            ifnonnull 13
            aload 9
            astore 8
            goto 14
      StackMap locals:
      StackMap stack:
        13: aload 8
            aload 9
            if_acmpeq 14
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        14: aload 8
            athrow
        15: .line 478
      StackMap locals:
      StackMap stack:
            aload 4 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisField field
        16: .line 467
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Class java.lang.String com.oracle.graal.pointsto.meta.AnalysisType top int int com.oracle.graal.pointsto.meta.AnalysisField[]
      StackMap stack:
            iinc 5 1
      StackMap locals:
      StackMap stack:
        17: iload 5
            iload 6
            if_icmplt 2
        18: .line 481
            new java.lang.StringBuilder
            dup
            ldc "field not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* fieldName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.Class clazz
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   19     0                   this  Lcom/oracle/graal/pointsto/BigBang;
            0   19     1                  clazz  Ljava/lang/Class<*>;
            0   19     2              fieldName  Ljava/lang/String;
            1   19     3                   type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            3   16     4                  field  Lcom/oracle/graal/pointsto/meta/AnalysisField;
            6   11    10                 indent  Lorg/graalvm/compiler/debug/Indent;
            8    9    11  fieldDeclaredTypeFlow  Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;
      Exception table:
        from    to  target  type
           6     9      10  any
           5    12      12  any
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
           Name  Flags
      clazz      
      fieldName  

  public com.oracle.graal.pointsto.meta.AnalysisType addSystemStaticField(java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String fieldName
         0: .line 486
            aload 0 /* this */
            aload 1 /* clazz */
            iconst_0
            iconst_0
            invokevirtual com.oracle.graal.pointsto.BigBang.addSystemClass:(Ljava/lang/Class;ZZ)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            pop
         1: .line 489
            aconst_null
            astore 4
            aconst_null
            astore 5
         2: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "add system static field %s in class %s"
            aload 2 /* fieldName */
            aload 1 /* clazz */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/Indent;
            astore 6 /* indent */
        start local 6 // org.graalvm.compiler.debug.Indent indent
         3: .line 490
            aload 1 /* clazz */
            aload 2 /* fieldName */
            invokevirtual java.lang.Class.getField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
            astore 3 /* reflectField */
        start local 3 // java.lang.reflect.Field reflectField
         4: .line 491
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 3 /* reflectField */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaField:(Ljava/lang/reflect/Field;)Lcom/oracle/graal/pointsto/meta/AnalysisField;
            astore 7 /* field */
        start local 7 // com.oracle.graal.pointsto.meta.AnalysisField field
         5: .line 492
            aload 7 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.registerAsAccessed:()V
         6: .line 493
            aload 7 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 0 /* this */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getTypeFlow:(Lcom/oracle/graal/pointsto/BigBang;Z)Lcom/oracle/graal/pointsto/flow/AllInstantiatedTypeFlow;
            astore 8 /* fieldFlow */
        start local 8 // com.oracle.graal.pointsto.flow.TypeFlow fieldFlow
         7: .line 494
            aload 8 /* fieldFlow */
            aload 0 /* this */
            aload 7 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getStaticFieldFlow:()Lcom/oracle/graal/pointsto/flow/FieldTypeFlow;
            invokevirtual com.oracle.graal.pointsto.flow.TypeFlow.addUse:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/TypeFlow;)Z
            pop
         8: .line 495
            aload 7 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisField.getType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
         9: .line 496
            aload 6 /* indent */
            ifnull 10
            aload 6 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        10: .line 495
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Class java.lang.String java.lang.reflect.Field java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent com.oracle.graal.pointsto.meta.AnalysisField com.oracle.graal.pointsto.flow.TypeFlow
      StackMap stack: com.oracle.graal.pointsto.meta.AnalysisType
            areturn
        end local 8 // com.oracle.graal.pointsto.flow.TypeFlow fieldFlow
        end local 7 // com.oracle.graal.pointsto.meta.AnalysisField field
        end local 3 // java.lang.reflect.Field reflectField
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Class java.lang.String top java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        11: astore 4
        12: .line 496
            aload 6 /* indent */
            ifnull 13
            aload 6 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 6 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        13: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: astore 5
            aload 4
            ifnonnull 15
            aload 5
            astore 4
            goto 16
      StackMap locals:
      StackMap stack:
        15: aload 4
            aload 5
            if_acmpeq 16
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        16: aload 4
            athrow
        17: .line 497
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Class java.lang.String
      StackMap stack: java.lang.NoSuchFieldException
            pop
        18: .line 498
            new java.lang.StringBuilder
            dup
            ldc "field not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* fieldName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.Class clazz
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   19     0          this  Lcom/oracle/graal/pointsto/BigBang;
            0   19     1         clazz  Ljava/lang/Class<*>;
            0   19     2     fieldName  Ljava/lang/String;
            4   11     3  reflectField  Ljava/lang/reflect/Field;
            3   13     6        indent  Lorg/graalvm/compiler/debug/Indent;
            5   11     7         field  Lcom/oracle/graal/pointsto/meta/AnalysisField;
            7   11     8     fieldFlow  Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;
      Exception table:
        from    to  target  type
           3     9      11  any
           2    10      14  any
          11    14      14  any
           1    10      17  Class java.lang.NoSuchFieldException
          11    17      17  Class java.lang.NoSuchFieldException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
           Name  Flags
      clazz      
      fieldName  

  public void addSystemMethod(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[]);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // java.lang.Class clazz
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.Class[] parameterTypes
         0: .line 504
            aload 1 /* clazz */
            aload 2 /* methodName */
            aload 3 /* parameterTypes */
            invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
            astore 4 /* method */
        start local 4 // java.lang.reflect.Method method
         1: .line 505
            aload 0 /* this */
            aload 4 /* method */
            invokevirtual com.oracle.graal.pointsto.BigBang.addRootMethod:(Ljava/lang/reflect/Executable;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            pop
        end local 4 // java.lang.reflect.Method method
         2: .line 506
            goto 5
      StackMap locals:
      StackMap stack: java.lang.NoSuchMethodException
         3: astore 4 /* ex */
        start local 4 // java.lang.NoSuchMethodException ex
         4: .line 507
            aload 4 /* ex */
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
            athrow
        end local 4 // java.lang.NoSuchMethodException ex
         5: .line 509
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Class[] parameterTypes
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.Class clazz
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    6     0            this  Lcom/oracle/graal/pointsto/BigBang;
            0    6     1           clazz  Ljava/lang/Class<*>;
            0    6     2      methodName  Ljava/lang/String;
            0    6     3  parameterTypes  [Ljava/lang/Class;
            1    2     4          method  Ljava/lang/reflect/Method;
            4    5     4              ex  Ljava/lang/NoSuchMethodException;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.NoSuchMethodException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;)V
    MethodParameters:
                Name  Flags
      clazz           
      methodName      
      parameterTypes  

  public final org.graalvm.compiler.api.replacements.SnippetReflectionProvider getSnippetReflectionProvider();
    descriptor: ()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 512
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.providers:Lcom/oracle/graal/pointsto/meta/HostedProviders;
            invokevirtual com.oracle.graal.pointsto.meta.HostedProviders.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public final jdk.vm.ci.meta.ConstantReflectionProvider getConstantReflectionProvider();
    descriptor: ()Ljdk/vm/ci/meta/ConstantReflectionProvider;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 516
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.providers:Lcom/oracle/graal/pointsto/meta/HostedProviders;
            invokevirtual com.oracle.graal.pointsto.meta.HostedProviders.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public org.graalvm.compiler.core.common.spi.ConstantFieldProvider getConstantFieldProvider();
    descriptor: ()Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 520
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.providers:Lcom/oracle/graal/pointsto/meta/HostedProviders;
            invokevirtual com.oracle.graal.pointsto.meta.HostedProviders.getConstantFieldProvider:()Lorg/graalvm/compiler/core/common/spi/ConstantFieldProvider;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public com.oracle.graal.pointsto.util.CompletionExecutor getExecutor();
    descriptor: ()Lcom/oracle/graal/pointsto/util/CompletionExecutor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 524
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public void checkUserLimitations();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 528
            return
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public void postFlow(com.oracle.graal.pointsto.flow.TypeFlow<?>);
    descriptor: (Lcom/oracle/graal/pointsto/flow/TypeFlow;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.flow.TypeFlow operation
         0: .line 535
            aload 1 /* operation */
            getfield com.oracle.graal.pointsto.flow.TypeFlow.inQueue:Z
            ifeq 2
         1: .line 536
            return
         2: .line 538
      StackMap locals:
      StackMap stack:
            aload 1 /* operation */
            iconst_1
            putfield com.oracle.graal.pointsto.flow.TypeFlow.inQueue:Z
         3: .line 540
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            new com.oracle.graal.pointsto.BigBang$2
            dup
            aload 0 /* this */
            aload 1 /* operation */
            invokespecial com.oracle.graal.pointsto.BigBang$2.<init>:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/flow/TypeFlow;)V
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.execute:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
         4: .line 566
            return
        end local 1 // com.oracle.graal.pointsto.flow.TypeFlow operation
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Lcom/oracle/graal/pointsto/BigBang;
            0    5     1  operation  Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;
    Signature: (Lcom/oracle/graal/pointsto/flow/TypeFlow<*>;)V
    MethodParameters:
           Name  Flags
      operation  final

  public void postTask(com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable);
    descriptor: (Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable task
         0: .line 569
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            aload 1 /* task */
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.execute:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;)V
         1: .line 570
            return
        end local 1 // com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable task
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/pointsto/BigBang;
            0    2     1  task  Lcom/oracle/graal/pointsto/util/CompletionExecutor$DebugContextRunnable;
    MethodParameters:
      Name  Flags
      task  final

  public boolean finish();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 579
            aconst_null
            astore 1
            aconst_null
            astore 2
         1: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.debug:Lorg/graalvm/compiler/debug/DebugContext;
            ldc "starting analysis in BigBang.finish"
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
            astore 3 /* indent */
        start local 3 // org.graalvm.compiler.debug.Indent indent
         2: .line 580
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            aload 0 /* this */
            iconst_0
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.setAnalysisDataValid:(Lcom/oracle/graal/pointsto/BigBang;Z)V
         3: .line 581
            iconst_0
            istore 4 /* didSomeWork */
        start local 4 // boolean didSomeWork
         4: .line 585
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int
      StackMap stack:
            iload 4 /* didSomeWork */
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.BigBang.doTypeflow:()Z
            ior
            istore 4 /* didSomeWork */
         5: .line 591
            getstatic com.oracle.graal.pointsto.BigBang.$assertionsDisabled:Z
            ifne 6
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.getPostedOperations:()J
            lconst_0
            lcmp
            ifeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            istore 5 /* numTypes */
        start local 5 // int numTypes
         7: .line 593
            aconst_null
            astore 6
            aconst_null
            astore 7
         8: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.checkObjectsTimer:Lcom/oracle/graal/pointsto/util/Timer;
            invokevirtual com.oracle.graal.pointsto.util.Timer.start:()Lcom/oracle/graal/pointsto/util/Timer$StopTimer;
            astore 8 /* t */
        start local 8 // com.oracle.graal.pointsto.util.Timer$StopTimer t
         9: .line 595
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.BigBang.checkObjectGraph:()V
        10: .line 596
            aload 8 /* t */
            ifnull 16
            aload 8 /* t */
            invokevirtual com.oracle.graal.pointsto.util.Timer$StopTimer.close:()V
            goto 16
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent int int java.lang.Throwable java.lang.Throwable com.oracle.graal.pointsto.util.Timer$StopTimer
      StackMap stack: java.lang.Throwable
        11: astore 6
            aload 8 /* t */
            ifnull 12
            aload 8 /* t */
            invokevirtual com.oracle.graal.pointsto.util.Timer$StopTimer.close:()V
        end local 8 // com.oracle.graal.pointsto.util.Timer$StopTimer t
      StackMap locals:
      StackMap stack:
        12: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 7
            aload 6
            ifnonnull 14
            aload 7
            astore 6
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 6
            aload 7
            if_acmpeq 15
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        15: aload 6
            athrow
        16: .line 597
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.getPostedOperations:()J
            lconst_0
            lcmp
            ifne 4
            iload 5 /* numTypes */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpne 4
        17: .line 599
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            aload 0 /* this */
            iconst_1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.setAnalysisDataValid:(Lcom/oracle/graal/pointsto/BigBang;Z)V
        18: .line 601
            iload 4 /* didSomeWork */
        19: .line 602
            aload 3 /* indent */
            ifnull 20
            aload 3 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        20: .line 601
      StackMap locals:
      StackMap stack: int
            ireturn
        end local 5 // int numTypes
        end local 4 // boolean didSomeWork
      StackMap locals: com.oracle.graal.pointsto.BigBang java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        21: astore 1
        22: .line 602
            aload 3 /* indent */
            ifnull 23
            aload 3 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 3 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        23: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        24: astore 2
            aload 1
            ifnonnull 25
            aload 2
            astore 1
            goto 26
      StackMap locals:
      StackMap stack:
        25: aload 1
            aload 2
            if_acmpeq 26
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        26: aload 1
            athrow
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   27     0         this  Lcom/oracle/graal/pointsto/BigBang;
            2   23     3       indent  Lorg/graalvm/compiler/debug/Indent;
            4   21     4  didSomeWork  Z
            7   21     5     numTypes  I
            9   12     8            t  Lcom/oracle/graal/pointsto/util/Timer$StopTimer;
      Exception table:
        from    to  target  type
           9    10      11  any
           8    13      13  any
           2    19      21  any
           1    20      24  any
          21    24      24  any
    Exceptions:
      throws java.lang.InterruptedException

  public boolean doTypeflow();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 608
            aconst_null
            astore 2
            aconst_null
            astore 3
         1: aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.typeFlowTimer:Lcom/oracle/graal/pointsto/util/Timer;
            invokevirtual com.oracle.graal.pointsto.util.Timer.start:()Lcom/oracle/graal/pointsto/util/Timer$StopTimer;
            astore 4 /* ignored */
        start local 4 // com.oracle.graal.pointsto.util.Timer$StopTimer ignored
         2: .line 609
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.start:()V
         3: .line 610
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.complete:()J
            pop2
         4: .line 611
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.getPostedOperations:()J
            lconst_0
            lcmp
            ifle 5
            iconst_1
            goto 6
      StackMap locals: com.oracle.graal.pointsto.BigBang top java.lang.Throwable java.lang.Throwable com.oracle.graal.pointsto.util.Timer$StopTimer
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 1 /* didSomeWork */
        start local 1 // boolean didSomeWork
         7: .line 612
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.shutdown:()V
         8: .line 613
            aload 4 /* ignored */
            ifnull 14
            aload 4 /* ignored */
            invokevirtual com.oracle.graal.pointsto.util.Timer$StopTimer.close:()V
            goto 14
        end local 1 // boolean didSomeWork
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 2
            aload 4 /* ignored */
            ifnull 10
            aload 4 /* ignored */
            invokevirtual com.oracle.graal.pointsto.util.Timer$StopTimer.close:()V
        end local 4 // com.oracle.graal.pointsto.util.Timer$StopTimer ignored
      StackMap locals:
      StackMap stack:
        10: aload 2
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        11: astore 3
            aload 2
            ifnonnull 12
            aload 3
            astore 2
            goto 13
      StackMap locals:
      StackMap stack:
        12: aload 2
            aload 3
            if_acmpeq 13
            aload 2
            aload 3
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        13: aload 2
            athrow
        start local 1 // boolean didSomeWork
        14: .line 615
      StackMap locals: com.oracle.graal.pointsto.BigBang int
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.init:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;)V
        15: .line 616
            iload 1 /* didSomeWork */
            ireturn
        end local 1 // boolean didSomeWork
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   16     0         this  Lcom/oracle/graal/pointsto/BigBang;
            7    9     1  didSomeWork  Z
           14   16     1  didSomeWork  Z
            2   10     4      ignored  Lcom/oracle/graal/pointsto/util/Timer$StopTimer;
      Exception table:
        from    to  target  type
           2     8       9  any
           1    11      11  any
    Exceptions:
      throws java.lang.InterruptedException

  private void checkObjectGraph();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 623
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.scannedObjects:Lcom/oracle/graal/pointsto/ObjectScanner$ReusableSet;
            invokevirtual com.oracle.graal.pointsto.ObjectScanner$ReusableSet.reset:()V
         1: .line 625
            new com.oracle.graal.pointsto.AnalysisObjectScanner
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.scannedObjects:Lcom/oracle/graal/pointsto/ObjectScanner$ReusableSet;
            invokespecial com.oracle.graal.pointsto.AnalysisObjectScanner.<init>:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/ObjectScanner$ReusableSet;)V
            astore 1 /* objectScanner */
        start local 1 // com.oracle.graal.pointsto.ObjectScanner objectScanner
         2: .line 626
            aload 0 /* this */
            aload 1 /* objectScanner */
            invokevirtual com.oracle.graal.pointsto.BigBang.checkObjectGraph:(Lcom/oracle/graal/pointsto/ObjectScanner;)V
         3: .line 627
            getstatic com.oracle.graal.pointsto.api.PointstoOptions.ScanObjectsParallel:Lorg/graalvm/compiler/options/OptionKey;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.options:Lorg/graalvm/compiler/options/OptionValues;
            invokevirtual org.graalvm.compiler.options.OptionKey.getValue:(Lorg/graalvm/compiler/options/OptionValues;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 10
         4: .line 628
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.start:()V
         5: .line 629
            aload 1 /* objectScanner */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.ObjectScanner.scanBootImageHeapRoots:(Lcom/oracle/graal/pointsto/util/CompletionExecutor;)V
         6: .line 630
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.complete:()J
            pop2
         7: .line 631
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.shutdown:()V
         8: .line 632
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.executor:Lcom/oracle/graal/pointsto/util/CompletionExecutor;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.timing:Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;
            invokevirtual com.oracle.graal.pointsto.util.CompletionExecutor.init:(Lcom/oracle/graal/pointsto/util/CompletionExecutor$Timing;)V
         9: .line 633
            goto 11
        10: .line 634
      StackMap locals: com.oracle.graal.pointsto.ObjectScanner
      StackMap stack:
            aload 1 /* objectScanner */
            aconst_null
            invokevirtual com.oracle.graal.pointsto.ObjectScanner.scanBootImageHeapRoots:(Lcom/oracle/graal/pointsto/util/CompletionExecutor;)V
        11: .line 636
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokestatic com.oracle.graal.pointsto.meta.AnalysisType.updateAssignableTypes:(Lcom/oracle/graal/pointsto/BigBang;)V
        12: .line 637
            return
        end local 1 // com.oracle.graal.pointsto.ObjectScanner objectScanner
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lcom/oracle/graal/pointsto/BigBang;
            2   13     1  objectScanner  Lcom/oracle/graal/pointsto/ObjectScanner;
    Exceptions:
      throws java.lang.InterruptedException

  public com.oracle.graal.pointsto.HeapScanningPolicy scanningPolicy();
    descriptor: ()Lcom/oracle/graal/pointsto/HeapScanningPolicy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 640
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.heapScanningPolicy:Lcom/oracle/graal/pointsto/HeapScanningPolicy;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  protected void checkObjectGraph(com.oracle.graal.pointsto.ObjectScanner);
    descriptor: (Lcom/oracle/graal/pointsto/ObjectScanner;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang this
        start local 1 // com.oracle.graal.pointsto.ObjectScanner objectScanner
         0: .line 649
            return
        end local 1 // com.oracle.graal.pointsto.ObjectScanner objectScanner
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lcom/oracle/graal/pointsto/BigBang;
            0    1     1  objectScanner  Lcom/oracle/graal/pointsto/ObjectScanner;
    MethodParameters:
               Name  Flags
      objectScanner  

  public com.oracle.graal.pointsto.api.HostVM getHostVM();
    descriptor: ()Lcom/oracle/graal/pointsto/api/HostVM;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.BigBang this
         0: .line 652
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.BigBang.hostVM:Lcom/oracle/graal/pointsto/api/HostVM;
            areturn
        end local 0 // com.oracle.graal.pointsto.BigBang this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/BigBang;

  public static java.util.concurrent.ForkJoinPool createExecutor(org.graalvm.compiler.debug.DebugContext, int);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;I)Ljava/util/concurrent/ForkJoinPool;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.debug.DebugContext debug
        start local 1 // int numberOfThreads
         0: .line 657
            aload 0 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.areScopesEnabled:()Z
            ifne 1
            aload 0 /* debug */
            invokevirtual org.graalvm.compiler.debug.DebugContext.areMetricsEnabled:()Z
            ifeq 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* debug */
            goto 3
      StackMap locals:
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: org.graalvm.compiler.debug.DebugContext
         3: invokestatic com.oracle.graal.pointsto.BigBang.debugThreadFactory:(Lorg/graalvm/compiler/debug/DebugContext;)Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;
            astore 2 /* factory */
        start local 2 // java.util.concurrent.ForkJoinPool$ForkJoinWorkerThreadFactory factory
         4: .line 658
            new java.util.concurrent.ForkJoinPool
            dup
            iload 1 /* numberOfThreads */
            aload 2 /* factory */
            aconst_null
            iconst_0
            invokespecial java.util.concurrent.ForkJoinPool.<init>:(ILjava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;Ljava/lang/Thread$UncaughtExceptionHandler;Z)V
            areturn
        end local 2 // java.util.concurrent.ForkJoinPool$ForkJoinWorkerThreadFactory factory
        end local 1 // int numberOfThreads
        end local 0 // org.graalvm.compiler.debug.DebugContext debug
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0            debug  Lorg/graalvm/compiler/debug/DebugContext;
            0    5     1  numberOfThreads  I
            4    5     2          factory  Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;
    RuntimeInvisibleAnnotations: 
      org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"NP_NONNULL_PARAM_VIOLATION"}, justification = "ForkJoinPool does support null for the exception handler.")
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"NP_NONNULL_PARAM_VIOLATION"}, justification = "ForkJoinPool does support null for the exception handler.")
    MethodParameters:
                 Name  Flags
      debug            
      numberOfThreads  

  private static java.util.concurrent.ForkJoinPool$ForkJoinWorkerThreadFactory debugThreadFactory(org.graalvm.compiler.debug.DebugContext);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;)Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.debug.DebugContext debug
         0: .line 662
            aload 0 /* debug */
            invokedynamic newThread(Lorg/graalvm/compiler/debug/DebugContext;)Ljava/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory;
              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/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread;
                  com/oracle/graal/pointsto/BigBang.lambda$3(Lorg/graalvm/compiler/debug/DebugContext;Ljava/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread; (6)
                  (Ljava/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread;
            areturn
        end local 0 // org.graalvm.compiler.debug.DebugContext debug
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  debug  Lorg/graalvm/compiler/debug/DebugContext;
    MethodParameters:
       Name  Flags
      debug  

  private static java.util.concurrent.ForkJoinWorkerThread lambda$3(org.graalvm.compiler.debug.DebugContext, java.util.concurrent.ForkJoinPool);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Ljava/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=2, args_size=2
        start local 1 // java.util.concurrent.ForkJoinPool pool
         0: .line 662
            new com.oracle.graal.pointsto.BigBang$SubstrateWorkerThread
            dup
            aload 1 /* pool */
            aload 0
            invokespecial com.oracle.graal.pointsto.BigBang$SubstrateWorkerThread.<init>:(Ljava/util/concurrent/ForkJoinPool;Lorg/graalvm/compiler/debug/DebugContext;)V
            areturn
        end local 1 // java.util.concurrent.ForkJoinPool pool
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1  pool  Ljava/util/concurrent/ForkJoinPool;
}
SourceFile: "BigBang.java"
NestMembers:
  com.oracle.graal.pointsto.BigBang$1  com.oracle.graal.pointsto.BigBang$2  com.oracle.graal.pointsto.BigBang$AnalysisTiming  com.oracle.graal.pointsto.BigBang$BucketTiming  com.oracle.graal.pointsto.BigBang$ConstantObjectsProfiler  com.oracle.graal.pointsto.BigBang$ConstantObjectsProfiler$ConstantCounterEntry  com.oracle.graal.pointsto.BigBang$ConstantObjectsProfiler$ConstantCounterEntryComparator  com.oracle.graal.pointsto.BigBang$ConstantObjectsProfiler$MyInteger  com.oracle.graal.pointsto.BigBang$SubstrateWorkerThread  com.oracle.graal.pointsto.BigBang$TypeFlowRunnable
InnerClasses:
  com.oracle.graal.pointsto.BigBang$1
  com.oracle.graal.pointsto.BigBang$2
  protected AnalysisTiming = com.oracle.graal.pointsto.BigBang$AnalysisTiming of com.oracle.graal.pointsto.BigBang
  protected abstract BucketTiming = com.oracle.graal.pointsto.BigBang$BucketTiming of com.oracle.graal.pointsto.BigBang
  public ConstantObjectsProfiler = com.oracle.graal.pointsto.BigBang$ConstantObjectsProfiler of com.oracle.graal.pointsto.BigBang
  private SubstrateWorkerThread = com.oracle.graal.pointsto.BigBang$SubstrateWorkerThread of com.oracle.graal.pointsto.BigBang
  public abstract TypeFlowRunnable = com.oracle.graal.pointsto.BigBang$TypeFlowRunnable of com.oracle.graal.pointsto.BigBang
  public final ReusableSet = com.oracle.graal.pointsto.ObjectScanner$ReusableSet of com.oracle.graal.pointsto.ObjectScanner
  public abstract AbstractUnsafeLoadTypeFlow = com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow$AbstractUnsafeLoadTypeFlow of com.oracle.graal.pointsto.flow.OffsetLoadTypeFlow
  public abstract AbstractUnsafeStoreTypeFlow = com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow$AbstractUnsafeStoreTypeFlow of com.oracle.graal.pointsto.flow.OffsetStoreTypeFlow
  public abstract DebugContextRunnable = com.oracle.graal.pointsto.util.CompletionExecutor$DebugContextRunnable 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 StopTimer = com.oracle.graal.pointsto.util.Timer$StopTimer of com.oracle.graal.pointsto.util.Timer
  public abstract UncaughtExceptionHandler = java.lang.Thread$UncaughtExceptionHandler of java.lang.Thread
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract ForkJoinWorkerThreadFactory = java.util.concurrent.ForkJoinPool$ForkJoinWorkerThreadFactory of java.util.concurrent.ForkJoinPool
  public Builder = org.graalvm.compiler.debug.DebugContext$Builder of org.graalvm.compiler.debug.DebugContext