public class com.oracle.graal.pointsto.meta.AnalysisUniverse implements com.oracle.graal.pointsto.infrastructure.Universe
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.graal.pointsto.meta.AnalysisUniverse
  super_class: java.lang.Object
{
  protected final com.oracle.graal.pointsto.api.HostVM hostVM;
    descriptor: Lcom/oracle/graal/pointsto/api/HostVM;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private static final int ESTIMATED_FIELDS_PER_TYPE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int ESTIMATED_NUMBER_OF_TYPES;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2000

  static final int ESTIMATED_METHODS_PER_TYPE;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  static final int ESTIMATED_EMBEDDED_ROOTS;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 500

  private final java.util.concurrent.ConcurrentMap<jdk.vm.ci.meta.ResolvedJavaType, java.lang.Object> types;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljdk/vm/ci/meta/ResolvedJavaType;Ljava/lang/Object;>;

  private final java.util.concurrent.ConcurrentMap<jdk.vm.ci.meta.ResolvedJavaField, com.oracle.graal.pointsto.meta.AnalysisField> fields;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljdk/vm/ci/meta/ResolvedJavaField;Lcom/oracle/graal/pointsto/meta/AnalysisField;>;

  private final java.util.concurrent.ConcurrentMap<jdk.vm.ci.meta.ResolvedJavaMethod, com.oracle.graal.pointsto.meta.AnalysisMethod> methods;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;

  private final java.util.concurrent.ConcurrentMap<jdk.vm.ci.meta.Signature, com.oracle.graal.pointsto.infrastructure.WrappedSignature> signatures;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljdk/vm/ci/meta/Signature;Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;>;

  private final java.util.concurrent.ConcurrentMap<jdk.vm.ci.meta.ConstantPool, com.oracle.graal.pointsto.infrastructure.WrappedConstantPool> constantPools;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljdk/vm/ci/meta/ConstantPool;Lcom/oracle/graal/pointsto/infrastructure/WrappedConstantPool;>;

  private final java.util.concurrent.ConcurrentHashMap<jdk.vm.ci.meta.JavaConstant, jdk.vm.ci.code.BytecodePosition> embeddedRoots;
    descriptor: Ljava/util/concurrent/ConcurrentHashMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/code/BytecodePosition;>;

  private final java.util.concurrent.ConcurrentMap<com.oracle.graal.pointsto.meta.AnalysisField, java.lang.Boolean> unsafeAccessedStaticFields;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/ConcurrentMap<Lcom/oracle/graal/pointsto/meta/AnalysisField;Ljava/lang/Boolean;>;

  private boolean sealed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private volatile com.oracle.graal.pointsto.meta.AnalysisType[] typesById;
    descriptor: [Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  final java.util.concurrent.atomic.AtomicInteger nextTypeId;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.atomic.AtomicInteger nextMethodId;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0010) ACC_FINAL

  final java.util.concurrent.atomic.AtomicInteger nextFieldId;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0010) ACC_FINAL

  boolean analysisDataValid;
    descriptor: Z
    flags: (0x0000) 

  protected final com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitutions;
    descriptor: Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private java.util.function.Function<java.lang.Object, java.lang.Object>[] objectReplacers;
    descriptor: [Ljava/util/function/Function;
    flags: (0x0002) ACC_PRIVATE
    Signature: [Ljava/util/function/Function<Ljava/lang/Object;Ljava/lang/Object;>;

  private com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] featureSubstitutions;
    descriptor: [Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    flags: (0x0002) ACC_PRIVATE

  private com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] featureNativeSubstitutions;
    descriptor: [Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    flags: (0x0002) ACC_PRIVATE

  private final jdk.vm.ci.meta.MetaAccessProvider originalMetaAccess;
    descriptor: Ljdk/vm/ci/meta/MetaAccessProvider;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.api.replacements.SnippetReflectionProvider originalSnippetReflection;
    descriptor: Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection;
    descriptor: Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.graal.pointsto.meta.AnalysisType objectClass;
    descriptor: Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0002) ACC_PRIVATE

  private final jdk.vm.ci.meta.JavaKind wordKind;
    descriptor: Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.nativeimage.Platform platform;
    descriptor: Lorg/graalvm/nativeimage/Platform;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private com.oracle.graal.pointsto.AnalysisPolicy analysisPolicy;
    descriptor: Lcom/oracle/graal/pointsto/AnalysisPolicy;
    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 77
            ldc Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            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.meta.AnalysisUniverse.$assertionsDisabled:Z
         3: .line 84
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public jdk.vm.ci.meta.JavaKind getWordKind();
    descriptor: ()Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 125
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.wordKind:Ljdk/vm/ci/meta/JavaKind;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public void <init>(com.oracle.graal.pointsto.api.HostVM, jdk.vm.ci.meta.JavaKind, org.graalvm.nativeimage.Platform, com.oracle.graal.pointsto.AnalysisPolicy, com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor, jdk.vm.ci.meta.MetaAccessProvider, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, org.graalvm.compiler.api.replacements.SnippetReflectionProvider);
    descriptor: (Lcom/oracle/graal/pointsto/api/HostVM;Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/nativeimage/Platform;Lcom/oracle/graal/pointsto/AnalysisPolicy;Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=9
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // com.oracle.graal.pointsto.api.HostVM hostVM
        start local 2 // jdk.vm.ci.meta.JavaKind wordKind
        start local 3 // org.graalvm.nativeimage.Platform platform
        start local 4 // com.oracle.graal.pointsto.AnalysisPolicy analysisPolicy
        start local 5 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitutions
        start local 6 // jdk.vm.ci.meta.MetaAccessProvider originalMetaAccess
        start local 7 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider originalSnippetReflection
        start local 8 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
         0: .line 129
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 86
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            sipush 2000
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
         2: .line 87
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            sipush 6000
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.fields:Ljava/util/concurrent/ConcurrentMap;
         3: .line 88
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            sipush 30000
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.methods:Ljava/util/concurrent/ConcurrentMap;
         4: .line 89
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            sipush 30000
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.signatures:Ljava/util/concurrent/ConcurrentMap;
         5: .line 90
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            sipush 2000
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.constantPools:Ljava/util/concurrent/ConcurrentMap;
         6: .line 91
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            sipush 500
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.embeddedRoots:Ljava/util/concurrent/ConcurrentHashMap;
         7: .line 92
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.unsafeAccessedStaticFields:Ljava/util/concurrent/ConcurrentMap;
         8: .line 96
            aload 0 /* this */
            sipush 2000
            anewarray com.oracle.graal.pointsto.meta.AnalysisType
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
         9: .line 97
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.nextTypeId:Ljava/util/concurrent/atomic/AtomicInteger;
        10: .line 98
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_1
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.nextMethodId:Ljava/util/concurrent/atomic/AtomicInteger;
        11: .line 99
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_1
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.nextFieldId:Ljava/util/concurrent/atomic/AtomicInteger;
        12: .line 132
            aload 0 /* this */
            aload 1 /* hostVM */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.hostVM:Lcom/oracle/graal/pointsto/api/HostVM;
        13: .line 133
            aload 0 /* this */
            aload 2 /* wordKind */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.wordKind:Ljdk/vm/ci/meta/JavaKind;
        14: .line 134
            aload 0 /* this */
            aload 3 /* platform */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.platform:Lorg/graalvm/nativeimage/Platform;
        15: .line 135
            aload 0 /* this */
            aload 4 /* analysisPolicy */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.analysisPolicy:Lcom/oracle/graal/pointsto/AnalysisPolicy;
        16: .line 136
            aload 0 /* this */
            aload 5 /* substitutions */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
        17: .line 137
            aload 0 /* this */
            aload 6 /* originalMetaAccess */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalMetaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
        18: .line 138
            aload 0 /* this */
            aload 7 /* originalSnippetReflection */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalSnippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
        19: .line 139
            aload 0 /* this */
            aload 8 /* snippetReflection */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.snippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
        20: .line 141
            aload 0 /* this */
            iconst_0
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.sealed:Z
        21: .line 142
            aload 0 /* this */
            iconst_0
            anewarray java.util.function.Function
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
        22: .line 143
            aload 0 /* this */
            iconst_0
            anewarray com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
        23: .line 144
            aload 0 /* this */
            iconst_0
            anewarray com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureNativeSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
        24: .line 145
            return
        end local 8 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 7 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider originalSnippetReflection
        end local 6 // jdk.vm.ci.meta.MetaAccessProvider originalMetaAccess
        end local 5 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitutions
        end local 4 // com.oracle.graal.pointsto.AnalysisPolicy analysisPolicy
        end local 3 // org.graalvm.nativeimage.Platform platform
        end local 2 // jdk.vm.ci.meta.JavaKind wordKind
        end local 1 // com.oracle.graal.pointsto.api.HostVM hostVM
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0   25     0                       this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   25     1                     hostVM  Lcom/oracle/graal/pointsto/api/HostVM;
            0   25     2                   wordKind  Ljdk/vm/ci/meta/JavaKind;
            0   25     3                   platform  Lorg/graalvm/nativeimage/Platform;
            0   25     4             analysisPolicy  Lcom/oracle/graal/pointsto/AnalysisPolicy;
            0   25     5              substitutions  Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            0   25     6         originalMetaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
            0   25     7  originalSnippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0   25     8          snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    MethodParameters:
                           Name  Flags
      hostVM                     
      wordKind                   
      platform                   
      analysisPolicy             
      substitutions              
      originalMetaAccess         
      originalSnippetReflection  
      snippetReflection          

  public com.oracle.graal.pointsto.api.HostVM hostVM();
    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.meta.AnalysisUniverse this
         0: .line 149
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.hostVM:Lcom/oracle/graal/pointsto/api/HostVM;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public int getNextTypeId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 153
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.nextTypeId:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            ireturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public int getNextMethodId();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 157
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.nextMethodId:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            ireturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public void seal();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 161
            aload 0 /* this */
            iconst_1
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.sealed:Z
         1: .line 162
            return
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

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

  public void setAnalysisDataValid(com.oracle.graal.pointsto.BigBang, boolean);
    descriptor: (Lcom/oracle/graal/pointsto/BigBang;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // com.oracle.graal.pointsto.BigBang bb
        start local 2 // boolean dataIsValid
         0: .line 169
            iload 2 /* dataIsValid */
            ifeq 3
         1: .line 170
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.buildSubTypes:()V
         2: .line 171
            aload 0 /* this */
            aload 1 /* bb */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.collectMethodImplementations:(Lcom/oracle/graal/pointsto/BigBang;)V
         3: .line 173
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* dataIsValid */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.analysisDataValid:Z
         4: .line 174
            return
        end local 2 // boolean dataIsValid
        end local 1 // com.oracle.graal.pointsto.BigBang bb
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1           bb  Lcom/oracle/graal/pointsto/BigBang;
            0    5     2  dataIsValid  Z
    MethodParameters:
             Name  Flags
      bb           
      dataIsValid  

  public com.oracle.graal.pointsto.meta.AnalysisType optionalLookup(jdk.vm.ci.meta.ResolvedJavaType);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaType type
         0: .line 177
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor.lookup:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 2 /* actualType */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaType actualType
         1: .line 178
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* actualType */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* claim */
        start local 3 // java.lang.Object claim
         2: .line 179
            aload 3 /* claim */
            instanceof com.oracle.graal.pointsto.meta.AnalysisType
            ifeq 4
         3: .line 180
            aload 3 /* claim */
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            areturn
         4: .line 182
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaType java.lang.Object
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.Object claim
        end local 2 // jdk.vm.ci.meta.ResolvedJavaType actualType
        end local 1 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1        type  Ljdk/vm/ci/meta/ResolvedJavaType;
            1    5     2  actualType  Ljdk/vm/ci/meta/ResolvedJavaType;
            2    5     3       claim  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      type  

  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=5, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaType type
         0: .line 187
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookupAllowUnresolved:(Ljdk/vm/ci/meta/JavaType;)Ljdk/vm/ci/meta/JavaType;
            astore 2 /* result */
        start local 2 // jdk.vm.ci.meta.JavaType result
         1: .line 188
            aload 2 /* result */
            ifnonnull 3
         2: .line 189
            aconst_null
            areturn
         3: .line 190
      StackMap locals: jdk.vm.ci.meta.JavaType
      StackMap stack:
            aload 2 /* result */
            instanceof jdk.vm.ci.meta.ResolvedJavaType
            ifeq 5
         4: .line 191
            aload 2 /* result */
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            areturn
         5: .line 193
      StackMap locals:
      StackMap stack:
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unresolved type found. Probably there are some compilation or classpath problems. "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            iconst_1
            invokeinterface jdk.vm.ci.meta.JavaType.toJavaName:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // jdk.vm.ci.meta.JavaType result
        end local 1 // jdk.vm.ci.meta.JavaType type
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    6     1    type  Ljdk/vm/ci/meta/JavaType;
            1    6     2  result  Ljdk/vm/ci/meta/JavaType;
    MethodParameters:
      Name  Flags
      type  

  public jdk.vm.ci.meta.JavaType lookupAllowUnresolved(jdk.vm.ci.meta.JavaType);
    descriptor: (Ljdk/vm/ci/meta/JavaType;)Ljdk/vm/ci/meta/JavaType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaType rawType
         0: .line 198
            aload 1 /* rawType */
            ifnonnull 2
         1: .line 199
            aconst_null
            areturn
         2: .line 201
      StackMap locals:
      StackMap stack:
            aload 1 /* rawType */
            instanceof jdk.vm.ci.meta.ResolvedJavaType
            ifne 4
         3: .line 202
            aload 1 /* rawType */
            areturn
         4: .line 204
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 5
            aload 1 /* rawType */
            instanceof com.oracle.graal.pointsto.meta.AnalysisType
            ifeq 5
            new java.lang.AssertionError
            dup
            ldc "lookupAllowUnresolved does not support analysis types."
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         5: .line 206
      StackMap locals:
      StackMap stack:
            aload 1 /* rawType */
            checkcast jdk.vm.ci.meta.ResolvedJavaType
            astore 2 /* hostType */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaType hostType
         6: .line 207
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            aload 2 /* hostType */
            invokevirtual com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor.lookup:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 3 /* type */
        start local 3 // jdk.vm.ci.meta.ResolvedJavaType type
         7: .line 208
            aload 0 /* this */
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.optionalLookup:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            astore 4 /* result */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisType result
         8: .line 209
            aload 4 /* result */
            ifnonnull 10
         9: .line 210
            aload 0 /* this */
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.createType:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            astore 4 /* result */
        10: .line 212
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaType jdk.vm.ci.meta.ResolvedJavaType com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack:
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 11
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 4 /* result */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getId:()I
            aaload
            aload 4 /* result */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.equals:(Ljava/lang/Object;)Z
            ifne 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 213
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisType result
        end local 3 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 2 // jdk.vm.ci.meta.ResolvedJavaType hostType
        end local 1 // jdk.vm.ci.meta.JavaType rawType
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   12     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   12     1   rawType  Ljdk/vm/ci/meta/JavaType;
            6   12     2  hostType  Ljdk/vm/ci/meta/ResolvedJavaType;
            7   12     3      type  Ljdk/vm/ci/meta/ResolvedJavaType;
            8   12     4    result  Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
         Name  Flags
      rawType  

  private com.oracle.graal.pointsto.meta.AnalysisType createType(jdk.vm.ci.meta.ResolvedJavaType);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=9, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaType type
         0: .line 218
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.platformSupported:(Ljava/lang/reflect/AnnotatedElement;)Z
            ifne 2
         1: .line 219
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            new java.lang.StringBuilder
            dup
            ldc "type is not available in this platform: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            iconst_1
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.toJavaName:(Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.sealed:Z
            ifeq 4
            aload 1 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isArray:()Z
            ifne 4
         3: .line 226
            aload 1 /* type */
            invokestatic com.oracle.graal.pointsto.util.AnalysisError.typeNotFound:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/graal/pointsto/util/AnalysisError$TypeNotFoundError;
            athrow
         4: .line 230
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.hostVM:Lcom/oracle/graal/pointsto/api/HostVM;
            aload 1 /* type */
            aload 0 /* this */
            invokeinterface com.oracle.graal.pointsto.api.HostVM.checkType:(Ljdk/vm/ci/meta/ResolvedJavaType;Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;)V
         5: .line 237
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.getName:()Ljava/lang/String;
            astore 2 /* claim */
        start local 2 // java.lang.Object claim
         6: .line 239
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* type */
            aload 2 /* claim */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* result */
        start local 3 // java.lang.Object result
         7: .line 240
            aload 3 /* result */
            instanceof com.oracle.graal.pointsto.meta.AnalysisType
            ifeq 9
         8: .line 241
            aload 3 /* result */
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            areturn
         9: .line 242
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 3 /* result */
            ifnull 17
        10: .line 248
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* type */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* result */
        11: .line 249
            aload 3 /* result */
            ifnonnull 13
        12: .line 255
            goto 6
        13: .line 256
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            aload 2 /* claim */
            if_acmpne 15
        14: .line 260
            ldc "Deadlock creating new types"
            invokestatic jdk.vm.ci.common.JVMCIError.shouldNotReachHere:(Ljava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        15: .line 262
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            instanceof com.oracle.graal.pointsto.meta.AnalysisType
            ifeq 10
        16: .line 263
            aload 3 /* result */
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            areturn
        end local 3 // java.lang.Object result
        17: .line 270
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* type */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalMetaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getStorageKind:(Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/MetaAccessProvider;)Ljdk/vm/ci/meta/JavaKind;
            astore 3 /* storageKind */
        start local 3 // jdk.vm.ci.meta.JavaKind storageKind
        18: .line 271
            new com.oracle.graal.pointsto.meta.AnalysisType
            dup
            aload 0 /* this */
            aload 1 /* type */
            aload 3 /* storageKind */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectClass:Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokespecial com.oracle.graal.pointsto.meta.AnalysisType.<init>:(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/JavaKind;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
            astore 4 /* newValue */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisType newValue
        19: .line 272
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.hostVM:Lcom/oracle/graal/pointsto/api/HostVM;
            aload 4 /* newValue */
            invokeinterface com.oracle.graal.pointsto.api.HostVM.registerType:(Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
        20: .line 274
            aload 0 /* this */
            dup
            astore 5
            monitorenter
        21: .line 283
            aload 4 /* newValue */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getId:()I
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            arraylength
            if_icmplt 23
        22: .line 284
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            arraylength
            iconst_2
            imul
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisType[]
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
        23: .line 286
      StackMap locals: jdk.vm.ci.meta.JavaKind com.oracle.graal.pointsto.meta.AnalysisType com.oracle.graal.pointsto.meta.AnalysisUniverse
      StackMap stack:
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 24
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 4 /* newValue */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getId:()I
            aaload
            ifnull 24
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        24: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 4 /* newValue */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getId:()I
            aload 4 /* newValue */
            aastore
        25: .line 289
            aload 4 /* newValue */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isJavaLangObject:()Z
            ifeq 28
        26: .line 290
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 27
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectClass:Lcom/oracle/graal/pointsto/meta/AnalysisType;
            ifnull 27
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        27: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* newValue */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectClass:Lcom/oracle/graal/pointsto/meta/AnalysisType;
        28: .line 274
      StackMap locals:
      StackMap stack:
            aload 5
            monitorexit
        29: goto 32
      StackMap locals:
      StackMap stack: java.lang.Throwable
        30: aload 5
            monitorexit
        31: athrow
        32: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* type */
            aload 4 /* newValue */
            invokeinterface java.util.concurrent.ConcurrentMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* oldValue */
        start local 5 // java.lang.Object oldValue
        33: .line 299
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 34
            aload 5 /* oldValue */
            aload 2 /* claim */
            if_acmpeq 34
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        34: .line 300
      StackMap locals: java.lang.Object
      StackMap stack:
            aconst_null
            astore 2 /* claim */
        35: .line 302
            aconst_null
            astore 6 /* enclosingType */
        start local 6 // jdk.vm.ci.meta.ResolvedJavaType enclosingType
        36: .line 304
            aload 4 /* newValue */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getWrapped:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getEnclosingType:()Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 6 /* enclosingType */
        37: .line 305
            goto 39
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse jdk.vm.ci.meta.ResolvedJavaType java.lang.Object jdk.vm.ci.meta.JavaKind com.oracle.graal.pointsto.meta.AnalysisType java.lang.Object jdk.vm.ci.meta.ResolvedJavaType
      StackMap stack: java.lang.LinkageError
        38: pop
        39: .line 309
      StackMap locals:
      StackMap stack:
            aload 6 /* enclosingType */
            ifnull 41
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 6 /* enclosingType */
            invokeinterface java.util.concurrent.ConcurrentMap.containsKey:(Ljava/lang/Object;)Z
            ifne 41
        40: .line 311
            aload 4 /* newValue */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getEnclosingType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            pop
        41: .line 314
      StackMap locals:
      StackMap stack:
            aload 4 /* newValue */
            astore 8
        42: .line 318
            aload 2 /* claim */
            ifnull 44
        43: .line 319
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* type */
            aload 2 /* claim */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        44: .line 314
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse jdk.vm.ci.meta.ResolvedJavaType java.lang.Object jdk.vm.ci.meta.JavaKind com.oracle.graal.pointsto.meta.AnalysisType java.lang.Object jdk.vm.ci.meta.ResolvedJavaType top com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack:
            aload 8
            areturn
        end local 6 // jdk.vm.ci.meta.ResolvedJavaType enclosingType
        end local 5 // java.lang.Object oldValue
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisType newValue
        end local 3 // jdk.vm.ci.meta.JavaKind storageKind
        45: .line 316
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse jdk.vm.ci.meta.ResolvedJavaType java.lang.Object
      StackMap stack: java.lang.Throwable
            astore 7
        46: .line 318
            aload 2 /* claim */
            ifnull 48
        47: .line 319
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.types:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* type */
            aload 2 /* claim */
            invokeinterface java.util.concurrent.ConcurrentMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
        48: .line 321
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse jdk.vm.ci.meta.ResolvedJavaType java.lang.Object top top top top java.lang.Throwable
      StackMap stack:
            aload 7
            athrow
        end local 2 // java.lang.Object claim
        end local 1 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   49     0           this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   49     1           type  Ljdk/vm/ci/meta/ResolvedJavaType;
            6   49     2          claim  Ljava/lang/Object;
            7   17     3         result  Ljava/lang/Object;
           18   45     3    storageKind  Ljdk/vm/ci/meta/JavaKind;
           19   45     4       newValue  Lcom/oracle/graal/pointsto/meta/AnalysisType;
           33   45     5       oldValue  Ljava/lang/Object;
           36   45     6  enclosingType  Ljdk/vm/ci/meta/ResolvedJavaType;
      Exception table:
        from    to  target  type
          21    29      30  any
          30    31      30  any
          36    37      38  Class java.lang.LinkageError
          17    42      45  any
    RuntimeInvisibleAnnotations: 
      org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"ES_COMPARING_STRINGS_WITH_EQ"}, justification = "Bug in findbugs")
    RuntimeInvisibleTypeAnnotations: 
      METHOD_RETURN
        org.graalvm.compiler.core.common.SuppressFBWarnings(value = {"ES_COMPARING_STRINGS_WITH_EQ"}, justification = "Bug in findbugs")
    MethodParameters:
      Name  Flags
      type  

  public jdk.vm.ci.meta.JavaKind getStorageKind(jdk.vm.ci.meta.ResolvedJavaType, jdk.vm.ci.meta.MetaAccessProvider);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaType;Ljdk/vm/ci/meta/MetaAccessProvider;)Ljdk/vm/ci/meta/JavaKind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaType type
        start local 2 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
         0: .line 325
            aload 2 /* metaAccess */
            ldc Lorg/graalvm/word/WordBase;
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor.resolve:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isAssignableFrom:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 2
         1: .line 326
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.wordKind:Ljdk/vm/ci/meta/JavaKind;
            areturn
         2: .line 328
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            areturn
        end local 2 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
        end local 1 // jdk.vm.ci.meta.ResolvedJavaType type
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    3     1        type  Ljdk/vm/ci/meta/ResolvedJavaType;
            0    3     2  metaAccess  Ljdk/vm/ci/meta/MetaAccessProvider;
    MethodParameters:
            Name  Flags
      type        
      metaAccess  

  public com.oracle.graal.pointsto.meta.AnalysisField lookup(jdk.vm.ci.meta.JavaField);
    descriptor: (Ljdk/vm/ci/meta/JavaField;)Lcom/oracle/graal/pointsto/meta/AnalysisField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaField field
         0: .line 333
            aload 0 /* this */
            aload 1 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookupAllowUnresolved:(Ljdk/vm/ci/meta/JavaField;)Ljdk/vm/ci/meta/JavaField;
            astore 2 /* result */
        start local 2 // jdk.vm.ci.meta.JavaField result
         1: .line 334
            aload 2 /* result */
            ifnonnull 3
         2: .line 335
            aconst_null
            areturn
         3: .line 336
      StackMap locals: jdk.vm.ci.meta.JavaField
      StackMap stack:
            aload 2 /* result */
            instanceof jdk.vm.ci.meta.ResolvedJavaField
            ifeq 5
         4: .line 337
            aload 2 /* result */
            checkcast com.oracle.graal.pointsto.meta.AnalysisField
            areturn
         5: .line 339
      StackMap locals:
      StackMap stack:
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unresolved field found. Probably there are some compilation or classpath problems. "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* field */
            ldc "%H.%n"
            invokeinterface jdk.vm.ci.meta.JavaField.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // jdk.vm.ci.meta.JavaField result
        end local 1 // jdk.vm.ci.meta.JavaField field
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    6     1   field  Ljdk/vm/ci/meta/JavaField;
            1    6     2  result  Ljdk/vm/ci/meta/JavaField;
    MethodParameters:
       Name  Flags
      field  

  public jdk.vm.ci.meta.JavaField lookupAllowUnresolved(jdk.vm.ci.meta.JavaField);
    descriptor: (Ljdk/vm/ci/meta/JavaField;)Ljdk/vm/ci/meta/JavaField;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaField rawField
         0: .line 344
            aload 1 /* rawField */
            ifnonnull 2
         1: .line 345
            aconst_null
            areturn
         2: .line 347
      StackMap locals:
      StackMap stack:
            aload 1 /* rawField */
            instanceof jdk.vm.ci.meta.ResolvedJavaField
            ifne 4
         3: .line 348
            aload 1 /* rawField */
            areturn
         4: .line 350
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 5
            aload 1 /* rawField */
            instanceof com.oracle.graal.pointsto.meta.AnalysisField
            ifeq 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 352
      StackMap locals:
      StackMap stack:
            aload 1 /* rawField */
            checkcast jdk.vm.ci.meta.ResolvedJavaField
            astore 2 /* field */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaField field
         6: .line 354
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.sealed:Z
            ifne 9
         7: .line 363
            aload 0 /* this */
            aload 2 /* field */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookup:(Ljdk/vm/ci/meta/JavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            astore 3 /* declaringType */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisType declaringType
         8: .line 364
            aload 3 /* declaringType */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.ensureInitialized:()V
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisType declaringType
         9: .line 367
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaField
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            aload 2 /* field */
            invokevirtual com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor.lookup:(Ljdk/vm/ci/meta/ResolvedJavaField;)Ljdk/vm/ci/meta/ResolvedJavaField;
            astore 2 /* field */
        10: .line 368
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.fields:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* field */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisField
            astore 3 /* result */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisField result
        11: .line 369
            aload 3 /* result */
            ifnonnull 13
        12: .line 370
            aload 0 /* this */
            aload 2 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.createField:(Ljdk/vm/ci/meta/ResolvedJavaField;)Lcom/oracle/graal/pointsto/meta/AnalysisField;
            astore 3 /* result */
        13: .line 372
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisField
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisField result
        end local 2 // jdk.vm.ci.meta.ResolvedJavaField field
        end local 1 // jdk.vm.ci.meta.JavaField rawField
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   14     0           this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   14     1       rawField  Ljdk/vm/ci/meta/JavaField;
            6   14     2          field  Ljdk/vm/ci/meta/ResolvedJavaField;
            8    9     3  declaringType  Lcom/oracle/graal/pointsto/meta/AnalysisType;
           11   14     3         result  Lcom/oracle/graal/pointsto/meta/AnalysisField;
    MethodParameters:
          Name  Flags
      rawField  

  private com.oracle.graal.pointsto.meta.AnalysisField createField(jdk.vm.ci.meta.ResolvedJavaField);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaField;)Lcom/oracle/graal/pointsto/meta/AnalysisField;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaField field
         0: .line 376
            aload 0 /* this */
            aload 1 /* field */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.platformSupported:(Ljava/lang/reflect/AnnotatedElement;)Z
            ifne 2
         1: .line 377
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            new java.lang.StringBuilder
            dup
            ldc "field is not available in this platform: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* field */
            ldc "%H.%n"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaField.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.sealed:Z
            ifeq 4
         3: .line 380
            aconst_null
            areturn
         4: .line 382
      StackMap locals:
      StackMap stack:
            new com.oracle.graal.pointsto.meta.AnalysisField
            dup
            aload 0 /* this */
            aload 1 /* field */
            invokespecial com.oracle.graal.pointsto.meta.AnalysisField.<init>:(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Ljdk/vm/ci/meta/ResolvedJavaField;)V
            astore 2 /* newValue */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisField newValue
         5: .line 383
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.fields:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* field */
            aload 2 /* newValue */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisField
            astore 3 /* oldValue */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisField oldValue
         6: .line 384
            aload 3 /* oldValue */
            ifnull 7
            aload 3 /* oldValue */
            goto 8
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisField com.oracle.graal.pointsto.meta.AnalysisField
      StackMap stack:
         7: aload 2 /* newValue */
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.meta.AnalysisField
         8: areturn
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisField oldValue
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisField newValue
        end local 1 // jdk.vm.ci.meta.ResolvedJavaField field
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    9     1     field  Ljdk/vm/ci/meta/ResolvedJavaField;
            5    9     2  newValue  Lcom/oracle/graal/pointsto/meta/AnalysisField;
            6    9     3  oldValue  Lcom/oracle/graal/pointsto/meta/AnalysisField;
    MethodParameters:
       Name  Flags
      field  

  public com.oracle.graal.pointsto.meta.AnalysisMethod lookup(jdk.vm.ci.meta.JavaMethod);
    descriptor: (Ljdk/vm/ci/meta/JavaMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaMethod method
         0: .line 389
            aload 0 /* this */
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookupAllowUnresolved:(Ljdk/vm/ci/meta/JavaMethod;)Ljdk/vm/ci/meta/JavaMethod;
            astore 2 /* result */
        start local 2 // jdk.vm.ci.meta.JavaMethod result
         1: .line 390
            aload 2 /* result */
            ifnonnull 3
         2: .line 391
            aconst_null
            areturn
         3: .line 392
      StackMap locals: jdk.vm.ci.meta.JavaMethod
      StackMap stack:
            aload 2 /* result */
            instanceof jdk.vm.ci.meta.ResolvedJavaMethod
            ifeq 5
         4: .line 393
            aload 2 /* result */
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod
            areturn
         5: .line 395
      StackMap locals:
      StackMap stack:
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unresolved method found. Probably there are some compilation or classpath problems. "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* method */
            ldc "%H.%n(%p)"
            invokeinterface jdk.vm.ci.meta.JavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // jdk.vm.ci.meta.JavaMethod result
        end local 1 // jdk.vm.ci.meta.JavaMethod method
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    6     1  method  Ljdk/vm/ci/meta/JavaMethod;
            1    6     2  result  Ljdk/vm/ci/meta/JavaMethod;
    MethodParameters:
        Name  Flags
      method  

  public jdk.vm.ci.meta.JavaMethod lookupAllowUnresolved(jdk.vm.ci.meta.JavaMethod);
    descriptor: (Ljdk/vm/ci/meta/JavaMethod;)Ljdk/vm/ci/meta/JavaMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaMethod rawMethod
         0: .line 400
            aload 1 /* rawMethod */
            ifnonnull 2
         1: .line 401
            aconst_null
            areturn
         2: .line 403
      StackMap locals:
      StackMap stack:
            aload 1 /* rawMethod */
            instanceof jdk.vm.ci.meta.ResolvedJavaMethod
            ifne 4
         3: .line 404
            aload 1 /* rawMethod */
            areturn
         4: .line 406
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 5
            aload 1 /* rawMethod */
            instanceof com.oracle.graal.pointsto.meta.AnalysisMethod
            ifeq 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 408
      StackMap locals:
      StackMap stack:
            aload 1 /* rawMethod */
            checkcast jdk.vm.ci.meta.ResolvedJavaMethod
            astore 2 /* method */
        start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod method
         6: .line 409
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            aload 2 /* method */
            invokevirtual com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor.lookup:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            astore 2 /* method */
         7: .line 410
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.methods:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* method */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod
            astore 3 /* result */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisMethod result
         8: .line 411
            aload 3 /* result */
            ifnonnull 10
         9: .line 412
            aload 0 /* this */
            aload 2 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.createMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            astore 3 /* result */
        10: .line 414
      StackMap locals: jdk.vm.ci.meta.ResolvedJavaMethod com.oracle.graal.pointsto.meta.AnalysisMethod
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisMethod result
        end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 1 // jdk.vm.ci.meta.JavaMethod rawMethod
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   11     1  rawMethod  Ljdk/vm/ci/meta/JavaMethod;
            6   11     2     method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            8   11     3     result  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    MethodParameters:
           Name  Flags
      rawMethod  

  private com.oracle.graal.pointsto.meta.AnalysisMethod createMethod(jdk.vm.ci.meta.ResolvedJavaMethod);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
         0: .line 418
            aload 0 /* this */
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.platformSupported:(Ljava/lang/reflect/AnnotatedElement;)Z
            ifne 2
         1: .line 419
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Method "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* method */
            ldc "%H.%n(%p) is not available in this platform."
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.sealed:Z
            ifeq 4
         3: .line 422
            aconst_null
            areturn
         4: .line 424
      StackMap locals:
      StackMap stack:
            new com.oracle.graal.pointsto.meta.AnalysisMethod
            dup
            aload 0 /* this */
            aload 1 /* method */
            invokespecial com.oracle.graal.pointsto.meta.AnalysisMethod.<init>:(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Ljdk/vm/ci/meta/ResolvedJavaMethod;)V
            astore 2 /* newValue */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod newValue
         5: .line 425
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.methods:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* method */
            aload 2 /* newValue */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod
            astore 3 /* oldValue */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisMethod oldValue
         6: .line 426
            aload 3 /* oldValue */
            ifnull 7
            aload 3 /* oldValue */
            goto 8
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisMethod com.oracle.graal.pointsto.meta.AnalysisMethod
      StackMap stack:
         7: aload 2 /* newValue */
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.meta.AnalysisMethod
         8: areturn
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisMethod oldValue
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod newValue
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    9     1    method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            5    9     2  newValue  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            6    9     3  oldValue  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    MethodParameters:
        Name  Flags
      method  

  public com.oracle.graal.pointsto.meta.AnalysisMethod[] lookup(jdk.vm.ci.meta.JavaMethod[]);
    descriptor: ([Ljdk/vm/ci/meta/JavaMethod;)[Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaMethod[] inputs
         0: .line 430
            new java.util.ArrayList
            dup
            aload 1 /* inputs */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* result */
        start local 2 // java.util.List result
         1: .line 431
            aload 1 /* inputs */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse jdk.vm.ci.meta.JavaMethod[] java.util.List top int int jdk.vm.ci.meta.JavaMethod[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* method */
        start local 3 // jdk.vm.ci.meta.JavaMethod method
         3: .line 432
            aload 0 /* this */
            aload 3 /* method */
            checkcast jdk.vm.ci.meta.ResolvedJavaMethod
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.platformSupported:(Ljava/lang/reflect/AnnotatedElement;)Z
            ifeq 7
         4: .line 433
            aload 0 /* this */
            aload 3 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookup:(Ljdk/vm/ci/meta/JavaMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            astore 7 /* aMethod */
        start local 7 // com.oracle.graal.pointsto.meta.AnalysisMethod aMethod
         5: .line 434
            aload 7 /* aMethod */
            ifnull 7
         6: .line 435
            aload 2 /* result */
            aload 7 /* aMethod */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // com.oracle.graal.pointsto.meta.AnalysisMethod aMethod
        end local 3 // jdk.vm.ci.meta.JavaMethod method
         7: .line 431
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 2
         9: .line 439
            aload 2 /* result */
            aload 2 /* result */
            invokeinterface java.util.List.size:()I
            anewarray com.oracle.graal.pointsto.meta.AnalysisMethod
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod[]
            areturn
        end local 2 // java.util.List result
        end local 1 // jdk.vm.ci.meta.JavaMethod[] inputs
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   10     1   inputs  [Ljdk/vm/ci/meta/JavaMethod;
            1   10     2   result  Ljava/util/List<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;
            3    7     3   method  Ljdk/vm/ci/meta/JavaMethod;
            5    7     7  aMethod  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    MethodParameters:
        Name  Flags
      inputs  

  public com.oracle.graal.pointsto.infrastructure.WrappedSignature lookup(jdk.vm.ci.meta.Signature, com.oracle.graal.pointsto.infrastructure.WrappedJavaType);
    descriptor: (Ljdk/vm/ci/meta/Signature;Lcom/oracle/graal/pointsto/infrastructure/WrappedJavaType;)Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.Signature signature
        start local 2 // com.oracle.graal.pointsto.infrastructure.WrappedJavaType defaultAccessingClass
         0: .line 444
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 1
            aload 1 /* signature */
            instanceof com.oracle.graal.pointsto.infrastructure.WrappedSignature
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.signatures:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* signature */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.infrastructure.WrappedSignature
            astore 3 /* result */
        start local 3 // com.oracle.graal.pointsto.infrastructure.WrappedSignature result
         2: .line 446
            aload 3 /* result */
            ifnonnull 8
         3: .line 447
            new com.oracle.graal.pointsto.infrastructure.WrappedSignature
            dup
            aload 0 /* this */
            aload 1 /* signature */
            aload 2 /* defaultAccessingClass */
            invokespecial com.oracle.graal.pointsto.infrastructure.WrappedSignature.<init>:(Lcom/oracle/graal/pointsto/infrastructure/Universe;Ljdk/vm/ci/meta/Signature;Lcom/oracle/graal/pointsto/infrastructure/WrappedJavaType;)V
            astore 4 /* newValue */
        start local 4 // com.oracle.graal.pointsto.infrastructure.WrappedSignature newValue
         4: .line 448
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.signatures:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* signature */
            aload 4 /* newValue */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.infrastructure.WrappedSignature
            astore 5 /* oldValue */
        start local 5 // com.oracle.graal.pointsto.infrastructure.WrappedSignature oldValue
         5: .line 449
            aload 5 /* oldValue */
            ifnull 6
            aload 5 /* oldValue */
            goto 7
      StackMap locals: com.oracle.graal.pointsto.infrastructure.WrappedSignature com.oracle.graal.pointsto.infrastructure.WrappedSignature com.oracle.graal.pointsto.infrastructure.WrappedSignature
      StackMap stack:
         6: aload 4 /* newValue */
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.infrastructure.WrappedSignature
         7: astore 3 /* result */
        end local 5 // com.oracle.graal.pointsto.infrastructure.WrappedSignature oldValue
        end local 4 // com.oracle.graal.pointsto.infrastructure.WrappedSignature newValue
         8: .line 451
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // com.oracle.graal.pointsto.infrastructure.WrappedSignature result
        end local 2 // com.oracle.graal.pointsto.infrastructure.WrappedJavaType defaultAccessingClass
        end local 1 // jdk.vm.ci.meta.Signature signature
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    9     0                   this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    9     1              signature  Ljdk/vm/ci/meta/Signature;
            0    9     2  defaultAccessingClass  Lcom/oracle/graal/pointsto/infrastructure/WrappedJavaType;
            2    9     3                 result  Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;
            4    8     4               newValue  Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;
            5    8     5               oldValue  Lcom/oracle/graal/pointsto/infrastructure/WrappedSignature;
    MethodParameters:
                       Name  Flags
      signature              
      defaultAccessingClass  

  public com.oracle.graal.pointsto.infrastructure.WrappedConstantPool lookup(jdk.vm.ci.meta.ConstantPool, com.oracle.graal.pointsto.infrastructure.WrappedJavaType);
    descriptor: (Ljdk/vm/ci/meta/ConstantPool;Lcom/oracle/graal/pointsto/infrastructure/WrappedJavaType;)Lcom/oracle/graal/pointsto/infrastructure/WrappedConstantPool;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ConstantPool constantPool
        start local 2 // com.oracle.graal.pointsto.infrastructure.WrappedJavaType defaultAccessingClass
         0: .line 456
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 1
            aload 1 /* constantPool */
            instanceof com.oracle.graal.pointsto.infrastructure.WrappedConstantPool
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 457
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.constantPools:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* constantPool */
            invokeinterface java.util.concurrent.ConcurrentMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.infrastructure.WrappedConstantPool
            astore 3 /* result */
        start local 3 // com.oracle.graal.pointsto.infrastructure.WrappedConstantPool result
         2: .line 458
            aload 3 /* result */
            ifnonnull 8
         3: .line 459
            new com.oracle.graal.pointsto.infrastructure.AnalysisConstantPool
            dup
            aload 0 /* this */
            aload 1 /* constantPool */
            aload 2 /* defaultAccessingClass */
            invokespecial com.oracle.graal.pointsto.infrastructure.AnalysisConstantPool.<init>:(Lcom/oracle/graal/pointsto/infrastructure/Universe;Ljdk/vm/ci/meta/ConstantPool;Lcom/oracle/graal/pointsto/infrastructure/WrappedJavaType;)V
            astore 4 /* newValue */
        start local 4 // com.oracle.graal.pointsto.infrastructure.WrappedConstantPool newValue
         4: .line 460
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.constantPools:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* constantPool */
            aload 4 /* newValue */
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.infrastructure.WrappedConstantPool
            astore 5 /* oldValue */
        start local 5 // com.oracle.graal.pointsto.infrastructure.WrappedConstantPool oldValue
         5: .line 461
            aload 5 /* oldValue */
            ifnull 6
            aload 5 /* oldValue */
            goto 7
      StackMap locals: com.oracle.graal.pointsto.infrastructure.WrappedConstantPool com.oracle.graal.pointsto.infrastructure.WrappedConstantPool com.oracle.graal.pointsto.infrastructure.WrappedConstantPool
      StackMap stack:
         6: aload 4 /* newValue */
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.infrastructure.WrappedConstantPool
         7: astore 3 /* result */
        end local 5 // com.oracle.graal.pointsto.infrastructure.WrappedConstantPool oldValue
        end local 4 // com.oracle.graal.pointsto.infrastructure.WrappedConstantPool newValue
         8: .line 463
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // com.oracle.graal.pointsto.infrastructure.WrappedConstantPool result
        end local 2 // com.oracle.graal.pointsto.infrastructure.WrappedJavaType defaultAccessingClass
        end local 1 // jdk.vm.ci.meta.ConstantPool constantPool
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    9     0                   this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    9     1           constantPool  Ljdk/vm/ci/meta/ConstantPool;
            0    9     2  defaultAccessingClass  Lcom/oracle/graal/pointsto/infrastructure/WrappedJavaType;
            2    9     3                 result  Lcom/oracle/graal/pointsto/infrastructure/WrappedConstantPool;
            4    8     4               newValue  Lcom/oracle/graal/pointsto/infrastructure/WrappedConstantPool;
            5    8     5               oldValue  Lcom/oracle/graal/pointsto/infrastructure/WrappedConstantPool;
    MethodParameters:
                       Name  Flags
      constantPool           
      defaultAccessingClass  

  public jdk.vm.ci.meta.JavaConstant lookup(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/JavaConstant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaConstant constant
         0: .line 468
            aload 1 /* constant */
            ifnonnull 2
         1: .line 469
            aconst_null
            areturn
         2: .line 470
      StackMap locals:
      StackMap stack:
            aload 1 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.isObject:()Z
            ifeq 4
            aload 1 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifne 4
         3: .line 471
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.snippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalSnippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            ldc Ljava/lang/Object;
            aload 1 /* constant */
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.forObject:(Ljava/lang/Object;)Ljdk/vm/ci/meta/JavaConstant;
            areturn
         4: .line 473
      StackMap locals:
      StackMap stack:
            aload 1 /* constant */
            areturn
        end local 1 // jdk.vm.ci.meta.JavaConstant constant
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1  constant  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
          Name  Flags
      constant  

  public jdk.vm.ci.meta.JavaConstant toHosted(jdk.vm.ci.meta.JavaConstant);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;)Ljdk/vm/ci/meta/JavaConstant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaConstant constant
         0: .line 478
            aload 1 /* constant */
            ifnonnull 2
         1: .line 479
            aconst_null
            areturn
         2: .line 480
      StackMap locals:
      StackMap stack:
            aload 1 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.getJavaKind:()Ljdk/vm/ci/meta/JavaKind;
            invokevirtual jdk.vm.ci.meta.JavaKind.isObject:()Z
            ifeq 4
            aload 1 /* constant */
            invokeinterface jdk.vm.ci.meta.JavaConstant.isNull:()Z
            ifne 4
         3: .line 481
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalSnippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            ldc Ljava/lang/Object;
            aload 1 /* constant */
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
            invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.forObject:(Ljava/lang/Object;)Ljdk/vm/ci/meta/JavaConstant;
            areturn
         4: .line 483
      StackMap locals:
      StackMap stack:
            aload 1 /* constant */
            areturn
        end local 1 // jdk.vm.ci.meta.JavaConstant constant
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1  constant  Ljdk/vm/ci/meta/JavaConstant;
    MethodParameters:
          Name  Flags
      constant  

  public java.util.List<com.oracle.graal.pointsto.meta.AnalysisType> getTypes();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 488
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            iconst_0
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getNextTypeId:()I
            invokeinterface java.util.List.subList:(II)Ljava/util/List;
            invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    Signature: ()Ljava/util/List<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;

  public com.oracle.graal.pointsto.meta.AnalysisType getType(int);
    descriptor: (I)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.meta.AnalysisUniverse this
        start local 1 // int typeId
         0: .line 492
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.typesById:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            iload 1 /* typeId */
            aaload
            astore 2 /* result */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType result
         1: .line 493
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 2
            aload 2 /* result */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getId:()I
            iload 1 /* typeId */
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 494
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType result
        end local 1 // int typeId
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    3     1  typeId  I
            1    3     2  result  Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
        Name  Flags
      typeId  

  public java.util.Collection<com.oracle.graal.pointsto.meta.AnalysisField> getFields();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 498
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.fields:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.values:()Ljava/util/Collection;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    Signature: ()Ljava/util/Collection<Lcom/oracle/graal/pointsto/meta/AnalysisField;>;

  public java.util.Collection<com.oracle.graal.pointsto.meta.AnalysisMethod> getMethods();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 502
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.methods:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.values:()Ljava/util/Collection;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    Signature: ()Ljava/util/Collection<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;

  public java.util.Map<jdk.vm.ci.meta.JavaConstant, jdk.vm.ci.code.BytecodePosition> getEmbeddedRoots();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 506
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.embeddedRoots:Ljava/util/concurrent/ConcurrentHashMap;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    Signature: ()Ljava/util/Map<Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/code/BytecodePosition;>;

  public void registerEmbeddedRoot(jdk.vm.ci.meta.JavaConstant, jdk.vm.ci.code.BytecodePosition);
    descriptor: (Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/code/BytecodePosition;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.JavaConstant root
        start local 2 // jdk.vm.ci.code.BytecodePosition position
         0: .line 513
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.embeddedRoots:Ljava/util/concurrent/ConcurrentHashMap;
            aload 1 /* root */
            aload 2 /* position */
            invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 514
            return
        end local 2 // jdk.vm.ci.code.BytecodePosition position
        end local 1 // jdk.vm.ci.meta.JavaConstant root
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    2     1      root  Ljdk/vm/ci/meta/JavaConstant;
            0    2     2  position  Ljdk/vm/ci/code/BytecodePosition;
    MethodParameters:
          Name  Flags
      root      
      position  

  public void registerUnsafeAccessedStaticField(com.oracle.graal.pointsto.meta.AnalysisField);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisField;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisField field
         0: .line 517
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.unsafeAccessedStaticFields:Ljava/util/concurrent/ConcurrentMap;
            aload 1 /* field */
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface java.util.concurrent.ConcurrentMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 518
            return
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisField field
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    2     1  field  Lcom/oracle/graal/pointsto/meta/AnalysisField;
    MethodParameters:
       Name  Flags
      field  

  public java.util.Set<com.oracle.graal.pointsto.meta.AnalysisField> getUnsafeAccessedStaticFields();
    descriptor: ()Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 521
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.unsafeAccessedStaticFields:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.keySet:()Ljava/util/Set;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
    Signature: ()Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisField;>;

  public void registerObjectReplacer(java.util.function.Function<java.lang.Object, java.lang.Object>);
    descriptor: (Ljava/util/function/Function;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // java.util.function.Function replacer
         0: .line 525
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 1
            aload 1 /* replacer */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 526
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
            arraylength
            iconst_1
            iadd
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast java.util.function.Function[]
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
         2: .line 527
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
            arraylength
            iconst_1
            isub
            aload 1 /* replacer */
            aastore
         3: .line 528
            return
        end local 1 // java.util.function.Function replacer
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    4     1  replacer  Ljava/util/function/Function<Ljava/lang/Object;Ljava/lang/Object;>;
    Signature: (Ljava/util/function/Function<Ljava/lang/Object;Ljava/lang/Object;>;)V
    MethodParameters:
          Name  Flags
      replacer  

  public void registerFeatureSubstitution(com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor);
    descriptor: (Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution
         0: .line 531
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            astore 2 /* subs */
        start local 2 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] subs
         1: .line 532
            aload 2 /* subs */
            aload 2 /* subs */
            arraylength
            iconst_1
            iadd
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[]
            astore 2 /* subs */
         2: .line 533
            aload 2 /* subs */
            aload 2 /* subs */
            arraylength
            iconst_1
            isub
            aload 1 /* substitution */
            aastore
         3: .line 534
            aload 0 /* this */
            aload 2 /* subs */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
         4: .line 535
            return
        end local 2 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] subs
        end local 1 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1  substitution  Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            1    5     2          subs  [Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    MethodParameters:
              Name  Flags
      substitution  

  public com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] getFeatureSubstitutions();
    descriptor: ()[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 538
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public void registerFeatureNativeSubstitution(com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor);
    descriptor: (Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution
         0: .line 542
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureNativeSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            astore 2 /* nativeSubs */
        start local 2 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] nativeSubs
         1: .line 543
            aload 2 /* nativeSubs */
            aload 2 /* nativeSubs */
            arraylength
            iconst_1
            iadd
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[]
            astore 2 /* nativeSubs */
         2: .line 544
            aload 2 /* nativeSubs */
            aload 2 /* nativeSubs */
            arraylength
            iconst_1
            isub
            aload 1 /* substitution */
            aastore
         3: .line 545
            aload 0 /* this */
            aload 2 /* nativeSubs */
            putfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureNativeSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
         4: .line 546
            return
        end local 2 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] nativeSubs
        end local 1 // com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor substitution
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1  substitution  Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            1    5     2    nativeSubs  [Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    MethodParameters:
              Name  Flags
      substitution  

  public com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor[] getFeatureNativeSubstitutions();
    descriptor: ()[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 549
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.featureNativeSubstitutions:[Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public java.lang.Object replaceObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // java.lang.Object source
         0: .line 560
            aload 1 /* source */
            ifnonnull 2
         1: .line 561
            aconst_null
            areturn
         2: .line 563
      StackMap locals:
      StackMap stack:
            aload 1 /* source */
            astore 2 /* destination */
        start local 2 // java.lang.Object destination
         3: .line 564
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.objectReplacers:[Ljava/util/function/Function;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 7
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.lang.Object java.lang.Object top int int java.util.function.Function[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* replacer */
        start local 3 // java.util.function.Function replacer
         5: .line 565
            aload 3 /* replacer */
            aload 2 /* destination */
            invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 2 /* destination */
        end local 3 // java.util.function.Function replacer
         6: .line 564
            iinc 4 1
      StackMap locals:
      StackMap stack:
         7: iload 4
            iload 5
            if_icmplt 4
         8: .line 567
            aload 2 /* destination */
            areturn
        end local 2 // java.lang.Object destination
        end local 1 // java.lang.Object source
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    9     1       source  Ljava/lang/Object;
            3    9     2  destination  Ljava/lang/Object;
            5    6     3     replacer  Ljava/util/function/Function<Ljava/lang/Object;Ljava/lang/Object;>;
    MethodParameters:
        Name  Flags
      source  

  public void buildSubTypes();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 571
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* allSubTypes */
        start local 1 // java.util.Map allSubTypes
         1: .line 572
            aconst_null
            astore 2 /* objectType */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType objectType
         2: .line 573
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.util.Map com.oracle.graal.pointsto.meta.AnalysisType top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            astore 3 /* type */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
         4: .line 574
            aload 1 /* allSubTypes */
            aload 3 /* type */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 575
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isInstanceClass:()Z
            ifeq 7
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getSuperclass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            ifnonnull 7
         6: .line 576
            aload 3 /* type */
            astore 2 /* objectType */
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
         7: .line 573
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 579
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 9
            aload 2 /* objectType */
            ifnonnull 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 581
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.util.Map com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 20
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.util.Map com.oracle.graal.pointsto.meta.AnalysisType top java.util.Iterator
      StackMap stack:
        10: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            astore 3 /* type */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
        11: .line 582
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getSuperclass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            ifnull 13
        12: .line 583
            aload 1 /* allSubTypes */
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getSuperclass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            aload 3 /* type */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        13: .line 585
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.util.Map com.oracle.graal.pointsto.meta.AnalysisType com.oracle.graal.pointsto.meta.AnalysisType java.util.Iterator
      StackMap stack:
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isInterface:()Z
            ifeq 15
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getInterfaces:()[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            arraylength
            ifne 15
        14: .line 586
            aload 1 /* allSubTypes */
            aload 2 /* objectType */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            aload 3 /* type */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        15: .line 588
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getInterfaces:()[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 19
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.util.Map com.oracle.graal.pointsto.meta.AnalysisType com.oracle.graal.pointsto.meta.AnalysisType java.util.Iterator top int int com.oracle.graal.pointsto.meta.AnalysisType[]
      StackMap stack:
        16: aload 8
            iload 6
            aaload
            astore 5 /* interf */
        start local 5 // com.oracle.graal.pointsto.meta.AnalysisType interf
        17: .line 589
            aload 1 /* allSubTypes */
            aload 5 /* interf */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            aload 3 /* type */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 5 // com.oracle.graal.pointsto.meta.AnalysisType interf
        18: .line 588
            iinc 6 1
      StackMap locals:
      StackMap stack:
        19: iload 6
            iload 7
            if_icmplt 16
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
        20: .line 581
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.util.Map com.oracle.graal.pointsto.meta.AnalysisType top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 10
        21: .line 593
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 25
      StackMap locals:
      StackMap stack:
        22: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisType
            astore 3 /* type */
        start local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
        23: .line 594
            aload 1 /* allSubTypes */
            aload 3 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Set
            astore 5 /* subTypesSet */
        start local 5 // java.util.Set subTypesSet
        24: .line 595
            aload 3 /* type */
            aload 5 /* subTypesSet */
            aload 5 /* subTypesSet */
            invokeinterface java.util.Set.size:()I
            anewarray com.oracle.graal.pointsto.meta.AnalysisType
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisType[]
            putfield com.oracle.graal.pointsto.meta.AnalysisType.subTypes:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
        end local 5 // java.util.Set subTypesSet
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
        25: .line 593
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        26: .line 597
            return
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType objectType
        end local 1 // java.util.Map allSubTypes
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   27     0         this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            1   27     1  allSubTypes  Ljava/util/Map<Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;>;
            2   27     2   objectType  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            4    7     3         type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
           11   20     3         type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
           17   18     5       interf  Lcom/oracle/graal/pointsto/meta/AnalysisType;
           23   25     3         type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
           24   25     5  subTypesSet  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;

  private void collectMethodImplementations(com.oracle.graal.pointsto.BigBang);
    descriptor: (Lcom/oracle/graal/pointsto/BigBang;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // com.oracle.graal.pointsto.BigBang bb
         0: .line 600
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.methods:Ljava/util/concurrent/ConcurrentMap;
            invokeinterface java.util.concurrent.ConcurrentMap.values:()Ljava/util/Collection;
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse com.oracle.graal.pointsto.BigBang top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod
            astore 2 /* method */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod method
         2: .line 602
            aload 1 /* bb */
            aload 2 /* method */
            invokestatic com.oracle.graal.pointsto.meta.AnalysisUniverse.getMethodImplementations:(Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Ljava/util/Set;
            astore 4 /* implementations */
        start local 4 // java.util.Set implementations
         3: .line 603
            aload 2 /* method */
            aload 4 /* implementations */
            aload 4 /* implementations */
            invokeinterface java.util.Set.size:()I
            anewarray com.oracle.graal.pointsto.meta.AnalysisMethod
            invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod[]
            putfield com.oracle.graal.pointsto.meta.AnalysisMethod.implementations:[Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
        end local 4 // java.util.Set implementations
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod method
         4: .line 600
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 605
            return
        end local 1 // com.oracle.graal.pointsto.BigBang bb
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    6     1               bb  Lcom/oracle/graal/pointsto/BigBang;
            2    4     2           method  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            3    4     4  implementations  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;
    MethodParameters:
      Name  Flags
      bb    

  public static java.util.Set<com.oracle.graal.pointsto.meta.AnalysisMethod> getMethodImplementations(com.oracle.graal.pointsto.BigBang, com.oracle.graal.pointsto.meta.AnalysisMethod);
    descriptor: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.oracle.graal.pointsto.BigBang bb
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisMethod method
         0: .line 608
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 2 /* implementations */
        start local 2 // java.util.Set implementations
         1: .line 609
            aload 1 /* method */
            getfield com.oracle.graal.pointsto.meta.AnalysisMethod.wrapped:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.canBeStaticallyBound:()Z
            ifne 2
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.isConstructor:()Z
            ifeq 5
         2: .line 610
      StackMap locals: java.util.Set
      StackMap stack:
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.isImplementationInvoked:()Z
            ifeq 10
         3: .line 611
            aload 2 /* implementations */
            aload 1 /* method */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         4: .line 613
            goto 10
         5: .line 615
      StackMap locals:
      StackMap stack:
            aload 1 /* method */
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getDeclaringClass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            aload 2 /* implementations */
            invokestatic com.oracle.graal.pointsto.meta.AnalysisUniverse.collectMethodImplementations:(Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set;)Z
            pop
         6: .line 616
            goto 10
      StackMap locals:
      StackMap stack: com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
         7: astore 3 /* ex */
        start local 3 // com.oracle.graal.pointsto.constraints.UnsupportedFeatureException ex
         8: .line 617
            ldc "Error while collecting implementations of %s : %s%n"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* method */
            ldc "%H.%n(%p)"
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* ex */
            invokevirtual com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.getMessage:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* message */
        start local 4 // java.lang.String message
         9: .line 618
            aload 0 /* bb */
            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 4 /* message */
            aconst_null
            aload 3 /* ex */
            invokevirtual com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.getCause:()Ljava/lang/Throwable;
            invokevirtual com.oracle.graal.pointsto.constraints.UnsupportedFeatures.addMessage:(Ljava/lang/String;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 4 // java.lang.String message
        end local 3 // com.oracle.graal.pointsto.constraints.UnsupportedFeatureException ex
        10: .line 621
      StackMap locals:
      StackMap stack:
            aload 2 /* implementations */
            areturn
        end local 2 // java.util.Set implementations
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisMethod method
        end local 0 // com.oracle.graal.pointsto.BigBang bb
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   11     0               bb  Lcom/oracle/graal/pointsto/BigBang;
            0   11     1           method  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            1   11     2  implementations  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;
            8   10     3               ex  Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatureException;
            9   10     4          message  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5     6       7  Class com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
    Signature: (Lcom/oracle/graal/pointsto/BigBang;Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;
    MethodParameters:
        Name  Flags
      bb      
      method  

  private static boolean collectMethodImplementations(com.oracle.graal.pointsto.meta.AnalysisMethod, com.oracle.graal.pointsto.meta.AnalysisType, java.util.Set<com.oracle.graal.pointsto.meta.AnalysisMethod>);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisMethod method
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisType holder
        start local 2 // java.util.Set implementations
         0: .line 625
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 1
            aload 1 /* holder */
            getfield com.oracle.graal.pointsto.meta.AnalysisType.subTypes:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            ifnonnull 1
            new java.lang.AssertionError
            dup
            aload 1 /* holder */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 626
      StackMap locals:
      StackMap stack:
            aload 1 /* holder */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isInstantiated:()Z
            istore 3 /* holderOrSubtypeInstantiated */
        start local 3 // boolean holderOrSubtypeInstantiated
         2: .line 627
            aload 1 /* holder */
            getfield com.oracle.graal.pointsto.meta.AnalysisType.subTypes:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 6
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisMethod com.oracle.graal.pointsto.meta.AnalysisType java.util.Set int top int int com.oracle.graal.pointsto.meta.AnalysisType[]
      StackMap stack:
         3: aload 7
            iload 5
            aaload
            astore 4 /* subClass */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisType subClass
         4: .line 628
            iload 3 /* holderOrSubtypeInstantiated */
            aload 0 /* method */
            aload 4 /* subClass */
            aload 2 /* implementations */
            invokestatic com.oracle.graal.pointsto.meta.AnalysisUniverse.collectMethodImplementations:(Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set;)Z
            ior
            istore 3 /* holderOrSubtypeInstantiated */
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisType subClass
         5: .line 627
            iinc 5 1
      StackMap locals:
      StackMap stack:
         6: iload 5
            iload 6
            if_icmplt 3
         7: .line 635
            iload 3 /* holderOrSubtypeInstantiated */
            ifne 8
            aload 0 /* method */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.isIntrinsicMethod:()Z
            ifeq 12
         8: .line 636
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisMethod com.oracle.graal.pointsto.meta.AnalysisType java.util.Set int
      StackMap stack:
            aload 1 /* holder */
            aload 0 /* method */
            aconst_null
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.resolveConcreteMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            astore 4 /* aResolved */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisMethod aResolved
         9: .line 637
            aload 4 /* aResolved */
            ifnull 12
        10: .line 642
            aload 4 /* aResolved */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.isImplementationInvoked:()Z
            ifeq 12
        11: .line 643
            aload 2 /* implementations */
            aload 4 /* aResolved */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisMethod aResolved
        12: .line 647
      StackMap locals:
      StackMap stack:
            iload 3 /* holderOrSubtypeInstantiated */
            ireturn
        end local 3 // boolean holderOrSubtypeInstantiated
        end local 2 // java.util.Set implementations
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisType holder
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisMethod method
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   13     0                       method  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            0   13     1                       holder  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            0   13     2              implementations  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;
            2   13     3  holderOrSubtypeInstantiated  Z
            4    5     4                     subClass  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            9   12     4                    aResolved  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
    Signature: (Lcom/oracle/graal/pointsto/meta/AnalysisMethod;Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisMethod;>;)Z
    MethodParameters:
                 Name  Flags
      method           
      holder           
      implementations  

  public static java.util.Set<com.oracle.graal.pointsto.meta.AnalysisType> getSubtypes(com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisType;)Ljava/util/Set;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisType baseType
         0: .line 651
            new java.util.LinkedHashSet
            dup
            invokespecial java.util.LinkedHashSet.<init>:()V
            astore 1 /* result */
        start local 1 // java.util.LinkedHashSet result
         1: .line 652
            aload 1 /* result */
            aload 0 /* baseType */
            invokevirtual java.util.LinkedHashSet.add:(Ljava/lang/Object;)Z
            pop
         2: .line 653
            aload 0 /* baseType */
            aload 1 /* result */
            invokestatic com.oracle.graal.pointsto.meta.AnalysisUniverse.collectSubtypes:(Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set;)V
         3: .line 654
            aload 1 /* result */
            areturn
        end local 1 // java.util.LinkedHashSet result
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisType baseType
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0  baseType  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            1    4     1    result  Ljava/util/LinkedHashSet<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
    Signature: (Lcom/oracle/graal/pointsto/meta/AnalysisType;)Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
    MethodParameters:
          Name  Flags
      baseType  

  private static void collectSubtypes(com.oracle.graal.pointsto.meta.AnalysisType, java.util.Set<com.oracle.graal.pointsto.meta.AnalysisType>);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisType baseType
        start local 1 // java.util.Set result
         0: .line 658
            getstatic com.oracle.graal.pointsto.meta.AnalysisUniverse.$assertionsDisabled:Z
            ifne 1
            aload 0 /* baseType */
            getfield com.oracle.graal.pointsto.meta.AnalysisType.subTypes:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            ifnonnull 1
            new java.lang.AssertionError
            dup
            aload 0 /* baseType */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 659
      StackMap locals:
      StackMap stack:
            aload 0 /* baseType */
            getfield com.oracle.graal.pointsto.meta.AnalysisType.subTypes:[Lcom/oracle/graal/pointsto/meta/AnalysisType;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 8
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisType java.util.Set top int int com.oracle.graal.pointsto.meta.AnalysisType[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* subType */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType subType
         3: .line 660
            aload 1 /* result */
            aload 2 /* subType */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 5
         4: .line 661
            goto 7
         5: .line 663
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisType java.util.Set com.oracle.graal.pointsto.meta.AnalysisType int int com.oracle.graal.pointsto.meta.AnalysisType[]
      StackMap stack:
            aload 1 /* result */
            aload 2 /* subType */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         6: .line 664
            aload 2 /* subType */
            aload 1 /* result */
            invokestatic com.oracle.graal.pointsto.meta.AnalysisUniverse.collectSubtypes:(Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set;)V
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType subType
         7: .line 659
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisType java.util.Set top int int com.oracle.graal.pointsto.meta.AnalysisType[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
         8: iload 3
            iload 4
            if_icmplt 2
         9: .line 666
            return
        end local 1 // java.util.Set result
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisType baseType
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0  baseType  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            0   10     1    result  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
            3    7     2   subType  Lcom/oracle/graal/pointsto/meta/AnalysisType;
    Signature: (Lcom/oracle/graal/pointsto/meta/AnalysisType;Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;)V
    MethodParameters:
          Name  Flags
      baseType  
      result    

  public org.graalvm.compiler.api.replacements.SnippetReflectionProvider getSnippetReflection();
    descriptor: ()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 670
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.snippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public org.graalvm.compiler.api.replacements.SnippetReflectionProvider getOriginalSnippetReflection();
    descriptor: ()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 674
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalSnippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public jdk.vm.ci.meta.ResolvedJavaMethod resolveSubstitution(jdk.vm.ci.meta.ResolvedJavaMethod);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
         0: .line 679
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.substitutions:Lcom/oracle/graal/pointsto/infrastructure/SubstitutionProcessor;
            aload 1 /* method */
            invokevirtual com.oracle.graal.pointsto.infrastructure.SubstitutionProcessor.resolve:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            areturn
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    1     1  method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
    MethodParameters:
        Name  Flags
      method  

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

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

  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.meta.AnalysisUniverse this
         0: .line 692
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.analysisPolicy:Lcom/oracle/graal/pointsto/AnalysisPolicy;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public boolean platformSupported(java.lang.reflect.AnnotatedElement);
    descriptor: (Ljava/lang/reflect/AnnotatedElement;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=7, args_size=2
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
        start local 1 // java.lang.reflect.AnnotatedElement element
         0: .line 696
            aload 1 /* element */
            instanceof jdk.vm.ci.meta.ResolvedJavaType
            ifeq 4
         1: .line 697
            aload 0 /* this */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getOriginalSnippetReflection:()Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            aload 1 /* element */
            checkcast jdk.vm.ci.meta.ResolvedJavaType
            invokestatic com.oracle.graal.pointsto.infrastructure.OriginalClassProvider.getJavaClass:(Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljdk/vm/ci/meta/ResolvedJavaType;)Ljava/lang/Class;
            invokevirtual java.lang.Class.getPackage:()Ljava/lang/Package;
            astore 2 /* p */
        start local 2 // java.lang.Package p
         2: .line 698
            aload 2 /* p */
            ifnull 4
            aload 0 /* this */
            aload 2 /* p */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.platformSupported:(Ljava/lang/reflect/AnnotatedElement;)Z
            ifne 4
         3: .line 699
            iconst_0
            ireturn
        end local 2 // java.lang.Package p
         4: .line 703
      StackMap locals:
      StackMap stack:
            aload 1 /* element */
            ldc Lorg/graalvm/nativeimage/Platforms;
            invokestatic org.graalvm.util.GuardedAnnotationAccess.getAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.graalvm.nativeimage.Platforms
            astore 2 /* platformsAnnotation */
        start local 2 // org.graalvm.nativeimage.Platforms platformsAnnotation
         5: .line 704
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.platform:Lorg/graalvm/nativeimage/Platform;
            ifnull 6
            aload 2 /* platformsAnnotation */
            ifnonnull 7
         6: .line 705
      StackMap locals: org.graalvm.nativeimage.Platforms
      StackMap stack:
            iconst_1
            ireturn
         7: .line 707
      StackMap locals:
      StackMap stack:
            aload 2 /* platformsAnnotation */
            invokeinterface org.graalvm.nativeimage.Platforms.value:()[Ljava/lang/Class;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 12
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisUniverse java.lang.reflect.AnnotatedElement org.graalvm.nativeimage.Platforms top int int java.lang.Class[]
      StackMap stack:
         8: aload 6
            iload 4
            aaload
            astore 3 /* platformGroup */
        start local 3 // java.lang.Class platformGroup
         9: .line 708
            aload 3 /* platformGroup */
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.platform:Lorg/graalvm/nativeimage/Platform;
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifeq 11
        10: .line 709
            iconst_1
            ireturn
        end local 3 // java.lang.Class platformGroup
        11: .line 707
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        12: iload 4
            iload 5
            if_icmplt 8
        13: .line 712
            iconst_0
            ireturn
        end local 2 // org.graalvm.nativeimage.Platforms platformsAnnotation
        end local 1 // java.lang.reflect.AnnotatedElement element
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   14     0                 this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0   14     1              element  Ljava/lang/reflect/AnnotatedElement;
            2    4     2                    p  Ljava/lang/Package;
            5   14     2  platformsAnnotation  Lorg/graalvm/nativeimage/Platforms;
            9   11     3        platformGroup  Ljava/lang/Class<+Lorg/graalvm/nativeimage/Platform;>;
    MethodParameters:
         Name  Flags
      element  

  public jdk.vm.ci.meta.MetaAccessProvider getOriginalMetaAccess();
    descriptor: ()Ljdk/vm/ci/meta/MetaAccessProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 716
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.originalMetaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public org.graalvm.nativeimage.Platform getPlatform();
    descriptor: ()Lorg/graalvm/nativeimage/Platform;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
         0: .line 720
            aload 0 /* this */
            getfield com.oracle.graal.pointsto.meta.AnalysisUniverse.platform:Lorg/graalvm/nativeimage/Platform;
            areturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;

  public jdk.vm.ci.meta.ResolvedJavaType objectType();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaType;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.objectType:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public jdk.vm.ci.meta.ResolvedJavaMethod lookup(jdk.vm.ci.meta.JavaMethod);
    descriptor: (Ljdk/vm/ci/meta/JavaMethod;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookup:(Ljdk/vm/ci/meta/JavaMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public jdk.vm.ci.meta.ResolvedJavaField lookup(jdk.vm.ci.meta.JavaField);
    descriptor: (Ljdk/vm/ci/meta/JavaField;)Ljdk/vm/ci/meta/ResolvedJavaField;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookup:(Ljdk/vm/ci/meta/JavaField;)Lcom/oracle/graal/pointsto/meta/AnalysisField;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public jdk.vm.ci.meta.ResolvedJavaType lookup(jdk.vm.ci.meta.JavaType);
    descriptor: (Ljdk/vm/ci/meta/JavaType;)Ljdk/vm/ci/meta/ResolvedJavaType;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.lookup:(Ljdk/vm/ci/meta/JavaType;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "AnalysisUniverse.java"
InnerClasses:
  public TypeNotFoundError = com.oracle.graal.pointsto.util.AnalysisError$TypeNotFoundError of com.oracle.graal.pointsto.util.AnalysisError