public class com.oracle.svm.hosted.classinitialization.ClassInitializationFeature implements com.oracle.svm.core.graal.GraalFeature
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.svm.hosted.classinitialization.ClassInitializationFeature
  super_class: java.lang.Object
{
  private com.oracle.svm.hosted.classinitialization.ClassInitializationSupport classInitializationSupport;
    descriptor: Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
    flags: (0x0002) ACC_PRIVATE

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

  private com.oracle.graal.pointsto.meta.AnalysisMetaAccess metaAccess;
    descriptor: Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
    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 76
            ldc Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            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.svm.hosted.classinitialization.ClassInitializationFeature.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
         0: .line 76
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;

  public static void processClassInitializationOptions(com.oracle.svm.hosted.classinitialization.ClassInitializationSupport);
    descriptor: (Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=12, args_size=1
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationSupport initializationSupport
         0: .line 140
            aload 0 /* initializationSupport */
            invokestatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.initializeNativeImagePackagesAtBuildTime:(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;)V
         1: .line 141
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options.ClassInitialization:Lcom/oracle/svm/core/option/HostedOptionKey;
            invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
            checkcast java.lang.String[]
            astore 1 /* initializationInfo */
        start local 1 // java.lang.String[] initializationInfo
         2: .line 142
            aload 1 /* initializationInfo */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 14
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationSupport java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         3: aload 5
            iload 3
            aaload
            astore 2 /* infos */
        start local 2 // java.lang.String infos
         4: .line 143
            aload 2 /* infos */
            ldc ","
            invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
            dup
            astore 9
            arraylength
            istore 8
            iconst_0
            istore 7
            goto 12
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationSupport java.lang.String[] java.lang.String int int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         5: aload 9
            iload 7
            aaload
            astore 6 /* info */
        start local 6 // java.lang.String info
         6: .line 144
            invokestatic com.oracle.svm.hosted.classinitialization.InitKind.values:()[Lcom/oracle/svm/hosted/classinitialization/InitKind;
            invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)Ljava/util/stream/Stream;
            aload 6 /* info */
            invokedynamic test(Ljava/lang/String;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$0(Ljava/lang/String;Lcom/oracle/svm/hosted/classinitialization/InitKind;)Z (6)
                  (Lcom/oracle/svm/hosted/classinitialization/InitKind;)Z
            invokeinterface java.util.stream.Stream.noneMatch:(Ljava/util/function/Predicate;)Z
            istore 10 /* noMatches */
        start local 10 // boolean noMatches
         7: .line 145
            iload 10 /* noMatches */
            ifeq 9
         8: .line 146
            ldc "Element in class initialization configuration must end in %s, %s, or %s. Found: %s"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic com.oracle.svm.hosted.classinitialization.InitKind.RUN_TIME:Lcom/oracle/svm/hosted/classinitialization/InitKind;
            invokevirtual com.oracle.svm.hosted.classinitialization.InitKind.suffix:()Ljava/lang/String;
            aastore
            dup
            iconst_1
            getstatic com.oracle.svm.hosted.classinitialization.InitKind.RERUN:Lcom/oracle/svm/hosted/classinitialization/InitKind;
            invokevirtual com.oracle.svm.hosted.classinitialization.InitKind.suffix:()Ljava/lang/String;
            aastore
            dup
            iconst_2
            getstatic com.oracle.svm.hosted.classinitialization.InitKind.BUILD_TIME:Lcom/oracle/svm/hosted/classinitialization/InitKind;
            invokevirtual com.oracle.svm.hosted.classinitialization.InitKind.suffix:()Ljava/lang/String;
            aastore
            dup
            iconst_3
            aload 6 /* info */
            aastore
            invokestatic com.oracle.svm.core.util.UserError.abort:(Ljava/lang/String;[Ljava/lang/Object;)Lcom/oracle/svm/core/util/UserError$UserException;
            athrow
         9: .line 149
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationSupport java.lang.String[] java.lang.String int int java.lang.String[] java.lang.String int int java.lang.String[] int
      StackMap stack:
            aload 6 /* info */
            invokestatic com.oracle.svm.hosted.classinitialization.InitKind.strip:(Ljava/lang/String;)Lorg/graalvm/collections/Pair;
            astore 11 /* elementType */
        start local 11 // org.graalvm.collections.Pair elementType
        10: .line 150
            aload 11 /* elementType */
            invokevirtual org.graalvm.collections.Pair.getRight:()Ljava/lang/Object;
            checkcast com.oracle.svm.hosted.classinitialization.InitKind
            aload 0 /* initializationSupport */
            invokevirtual com.oracle.svm.hosted.classinitialization.InitKind.stringConsumer:(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;)Ljava/util/function/Consumer;
            aload 11 /* elementType */
            invokevirtual org.graalvm.collections.Pair.getLeft:()Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
        end local 11 // org.graalvm.collections.Pair elementType
        end local 10 // boolean noMatches
        end local 6 // java.lang.String info
        11: .line 143
            iinc 7 1
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationSupport java.lang.String[] java.lang.String int int java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        12: iload 7
            iload 8
            if_icmplt 5
        end local 2 // java.lang.String infos
        13: .line 142
            iinc 3 1
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationSupport java.lang.String[] top int int java.lang.String[]
      StackMap stack:
        14: iload 3
            iload 4
            if_icmplt 3
        15: .line 153
            return
        end local 1 // java.lang.String[] initializationInfo
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationSupport initializationSupport
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   16     0  initializationSupport  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            2   16     1     initializationInfo  [Ljava/lang/String;
            4   13     2                  infos  Ljava/lang/String;
            6   11     6                   info  Ljava/lang/String;
            7   11    10              noMatches  Z
           10   11    11            elementType  Lorg/graalvm/collections/Pair<Ljava/lang/String;Lcom/oracle/svm/hosted/classinitialization/InitKind;>;
    MethodParameters:
                       Name  Flags
      initializationSupport  

  private static void initializeNativeImagePackagesAtBuildTime(com.oracle.svm.hosted.classinitialization.ClassInitializationSupport);
    descriptor: (Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationSupport initializationSupport
         0: .line 156
            aload 0 /* initializationSupport */
            ldc "com.oracle.svm"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         1: .line 157
            aload 0 /* initializationSupport */
            ldc "com.oracle.graal"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         2: .line 159
            aload 0 /* initializationSupport */
            ldc "org.graalvm.collections"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 160
            aload 0 /* initializationSupport */
            ldc "org.graalvm.compiler"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 161
            aload 0 /* initializationSupport */
            ldc "org.graalvm.word"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 162
            aload 0 /* initializationSupport */
            ldc "org.graalvm.nativeimage"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 163
            aload 0 /* initializationSupport */
            ldc "org.graalvm.util"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         7: .line 164
            aload 0 /* initializationSupport */
            ldc "org.graalvm.home"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         8: .line 165
            aload 0 /* initializationSupport */
            ldc "org.graalvm.polyglot"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
         9: .line 166
            aload 0 /* initializationSupport */
            ldc "org.graalvm.options"
            ldc "Native Image classes are always initialized at build time"
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.initializeAtBuildTime:(Ljava/lang/String;Ljava/lang/String;)V
        10: .line 167
            return
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationSupport initializationSupport
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   11     0  initializationSupport  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
    MethodParameters:
                       Name  Flags
      initializationSupport  

  public void duringSetup(org.graalvm.nativeimage.hosted.Feature$DuringSetupAccess);
    descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$DuringSetupAccess;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // org.graalvm.nativeimage.hosted.Feature$DuringSetupAccess a
         0: .line 171
            aload 1 /* a */
            checkcast com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl
            astore 2 /* access */
        start local 2 // com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl access
         1: .line 172
            aload 0 /* this */
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl.getHostVM:()Lcom/oracle/svm/hosted/SVMHost;
            invokevirtual com.oracle.svm.hosted.SVMHost.getClassInitializationSupport:()Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            putfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
         2: .line 173
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl.getBigBang:()Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getUnsupportedFeatures:()Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.setUnsupportedFeatures:(Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;)V
         3: .line 174
            aload 2 /* access */
            aload 0 /* this */
            invokedynamic apply(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;)Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.checkImageHeapInstance(Ljava/lang/Object;)Ljava/lang/Object; (7)
                  (Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl.registerObjectReplacer:(Ljava/util/function/Function;)V
         4: .line 175
            aload 0 /* this */
            aload 1 /* a */
            checkcast com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl.getBigBang:()Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getUniverse:()Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            putfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
         5: .line 176
            aload 0 /* this */
            aload 1 /* a */
            checkcast com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl.getBigBang:()Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getMetaAccess:()Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            putfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
         6: .line 177
            return
        end local 2 // com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl access
        end local 1 // org.graalvm.nativeimage.hosted.Feature$DuringSetupAccess a
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    7     1       a  Lorg/graalvm/nativeimage/hosted/Feature$DuringSetupAccess;
            1    7     2  access  Lcom/oracle/svm/hosted/FeatureImpl$DuringSetupAccessImpl;
    MethodParameters:
      Name  Flags
      a     

  private java.lang.Object checkImageHeapInstance(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=3, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // java.lang.Object obj
         0: .line 184
            aload 1 /* obj */
            ifnull 11
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 1 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.shouldInitializeAtRuntime:(Ljava/lang/Class;)Z
            ifeq 11
         1: .line 185
            new java.lang.StringBuilder
            dup
            ldc "No instances of "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " are allowed in the image heap as this class should be initialized at image runtime."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* msg */
        start local 2 // java.lang.String msg
         2: .line 186
            new java.lang.StringBuilder
            dup
            aload 2 /* msg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 1 /* obj */
         3: .line 187
            new java.lang.StringBuilder
            dup
            ldc " To fix the issue mark "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " for build-time initialization with "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 188
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options.ClassInitialization:Lcom/oracle/svm/core/option/HostedOptionKey;
            aload 1 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
            ldc "initialize-at-build-time"
            invokestatic com.oracle.svm.core.option.SubstrateOptionsParser.commandArgument:(Lorg/graalvm/compiler/options/OptionKey;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         5: .line 189
            ldc " or use the the information from the trace to find the culprit and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 190
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options.ClassInitialization:Lcom/oracle/svm/core/option/HostedOptionKey;
            ldc "<culprit>"
            ldc "initialize-at-run-time"
            invokestatic com.oracle.svm.core.option.SubstrateOptionsParser.commandArgument:(Lorg/graalvm/compiler/options/OptionKey;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 191
            ldc " to prevent its instantiation.\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         8: .line 187
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 186
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.objectInstantiationTraceMessage:(Ljava/lang/Object;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;
            astore 2 /* msg */
        10: .line 192
            new com.oracle.graal.pointsto.constraints.UnsupportedFeatureException
            dup
            aload 2 /* msg */
            invokespecial com.oracle.graal.pointsto.constraints.UnsupportedFeatureException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String msg
        11: .line 194
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0   12     1   obj  Ljava/lang/Object;
            2   11     2   msg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      obj   

  public void beforeAnalysis(org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess);
    descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$BeforeAnalysisAccess;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess a
         0: .line 199
            aload 1 /* a */
            checkcast com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl
            astore 2 /* access */
        start local 2 // com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl access
         1: .line 200
            getstatic com.oracle.svm.core.classinitialization.EnsureClassInitializedSnippets.FOREIGN_CALLS:[Lcom/oracle/svm/core/snippets/SnippetRuntime$SubstrateForeignCallDescriptor;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 5
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationFeature org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl top int int com.oracle.svm.core.snippets.SnippetRuntime$SubstrateForeignCallDescriptor[]
      StackMap stack:
         2: aload 6
            iload 4
            aaload
            astore 3 /* descriptor */
        start local 3 // com.oracle.svm.core.snippets.SnippetRuntime$SubstrateForeignCallDescriptor descriptor
         3: .line 201
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl.getBigBang:()Lcom/oracle/graal/pointsto/BigBang;
            aload 3 /* descriptor */
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl.getMetaAccess:()Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            invokevirtual com.oracle.svm.core.snippets.SnippetRuntime$SubstrateForeignCallDescriptor.findMethod:(Ljdk/vm/ci/meta/MetaAccessProvider;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
            checkcast com.oracle.graal.pointsto.meta.AnalysisMethod
            invokevirtual com.oracle.graal.pointsto.BigBang.addRootMethod:(Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            pop
        end local 3 // com.oracle.svm.core.snippets.SnippetRuntime$SubstrateForeignCallDescriptor descriptor
         4: .line 200
            iinc 4 1
      StackMap locals:
      StackMap stack:
         5: iload 4
            iload 5
            if_icmplt 2
         6: .line 203
            return
        end local 2 // com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl access
        end local 1 // org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess a
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    7     1           a  Lorg/graalvm/nativeimage/hosted/Feature$BeforeAnalysisAccess;
            1    7     2      access  Lcom/oracle/svm/hosted/FeatureImpl$BeforeAnalysisAccessImpl;
            3    4     3  descriptor  Lcom/oracle/svm/core/snippets/SnippetRuntime$SubstrateForeignCallDescriptor;
    MethodParameters:
      Name  Flags
      a     

  public void registerForeignCalls(com.oracle.svm.core.graal.meta.RuntimeConfiguration, org.graalvm.compiler.phases.util.Providers, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider, boolean);
    descriptor: (Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Lcom/oracle/svm/core/graal/meta/SubstrateForeignCallsProvider;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=6
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig
        start local 2 // org.graalvm.compiler.phases.util.Providers providers
        start local 3 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 4 // com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider foreignCalls
        start local 5 // boolean hosted
         0: .line 207
            aload 4 /* foreignCalls */
            aload 2 /* providers */
            getstatic com.oracle.svm.core.classinitialization.EnsureClassInitializedSnippets.FOREIGN_CALLS:[Lcom/oracle/svm/core/snippets/SnippetRuntime$SubstrateForeignCallDescriptor;
            invokevirtual com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider.register:(Lorg/graalvm/compiler/phases/util/Providers;[Lcom/oracle/svm/core/snippets/SnippetRuntime$SubstrateForeignCallDescriptor;)V
         1: .line 208
            return
        end local 5 // boolean hosted
        end local 4 // com.oracle.svm.core.graal.meta.SubstrateForeignCallsProvider foreignCalls
        end local 3 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 2 // org.graalvm.compiler.phases.util.Providers providers
        end local 1 // com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    2     1      runtimeConfig  Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
            0    2     2          providers  Lorg/graalvm/compiler/phases/util/Providers;
            0    2     3  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    2     4       foreignCalls  Lcom/oracle/svm/core/graal/meta/SubstrateForeignCallsProvider;
            0    2     5             hosted  Z
    MethodParameters:
                   Name  Flags
      runtimeConfig      
      providers          
      snippetReflection  
      foreignCalls       
      hosted             

  public void registerLowerings(com.oracle.svm.core.graal.meta.RuntimeConfiguration, org.graalvm.compiler.options.OptionValues, java.lang.Iterable<org.graalvm.compiler.debug.DebugHandlersFactory>, org.graalvm.compiler.phases.util.Providers, org.graalvm.compiler.api.replacements.SnippetReflectionProvider, java.util.Map<java.lang.Class<? extends org.graalvm.compiler.graph.Node>, com.oracle.svm.core.graal.snippets.NodeLoweringProvider<?>>, );
    descriptor: (Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljava/util/Map;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=8
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig
        start local 2 // org.graalvm.compiler.options.OptionValues options
        start local 3 // java.lang.Iterable factories
        start local 4 // org.graalvm.compiler.phases.util.Providers providers
        start local 5 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        start local 6 // java.util.Map lowerings
        start local 7 // boolean hosted
         0: .line 214
            aload 2 /* options */
            aload 3 /* factories */
            aload 4 /* providers */
            aload 5 /* snippetReflection */
            aload 6 /* lowerings */
            invokestatic com.oracle.svm.core.classinitialization.EnsureClassInitializedSnippets.registerLowerings:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljava/util/Map;)V
         1: .line 215
            return
        end local 7 // boolean hosted
        end local 6 // java.util.Map lowerings
        end local 5 // org.graalvm.compiler.api.replacements.SnippetReflectionProvider snippetReflection
        end local 4 // org.graalvm.compiler.phases.util.Providers providers
        end local 3 // java.lang.Iterable factories
        end local 2 // org.graalvm.compiler.options.OptionValues options
        end local 1 // com.oracle.svm.core.graal.meta.RuntimeConfiguration runtimeConfig
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    2     1      runtimeConfig  Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;
            0    2     2            options  Lorg/graalvm/compiler/options/OptionValues;
            0    2     3          factories  Ljava/lang/Iterable<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;
            0    2     4          providers  Lorg/graalvm/compiler/phases/util/Providers;
            0    2     5  snippetReflection  Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
            0    2     6          lowerings  Ljava/util/Map<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Lcom/oracle/svm/core/graal/snippets/NodeLoweringProvider<*>;>;
            0    2     7             hosted  Z
    Signature: (Lcom/oracle/svm/core/graal/meta/RuntimeConfiguration;Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/Iterable<Lorg/graalvm/compiler/debug/DebugHandlersFactory;>;Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Ljava/util/Map<Ljava/lang/Class<+Lorg/graalvm/compiler/graph/Node;>;Lcom/oracle/svm/core/graal/snippets/NodeLoweringProvider<*>;>;Z)V
    MethodParameters:
                   Name  Flags
      runtimeConfig      
      options            
      factories          
      providers          
      snippetReflection  
      lowerings          
      hosted             

  public void duringAnalysis(org.graalvm.nativeimage.hosted.Feature$DuringAnalysisAccess);
    descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$DuringAnalysisAccess;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // org.graalvm.nativeimage.hosted.Feature$DuringAnalysisAccess a
         0: .line 219
            aload 1 /* a */
            checkcast com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl
            astore 2 /* access */
        start local 2 // com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl access
         1: .line 226
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.checkDelayedInitialization:()Z
            pop
         2: .line 228
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl.getUniverse:()Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 9
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationFeature org.graalvm.nativeimage.hosted.Feature$DuringAnalysisAccess com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl 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 229
            aload 3 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isReachable:()Z
            ifeq 9
         5: .line 230
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl.getHostVM:()Lcom/oracle/svm/hosted/SVMHost;
            aload 3 /* type */
            invokevirtual com.oracle.svm.hosted.SVMHost.dynamicHub:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/svm/core/hub/DynamicHub;
            astore 5 /* hub */
        start local 5 // com.oracle.svm.core.hub.DynamicHub hub
         6: .line 231
            aload 5 /* hub */
            invokevirtual com.oracle.svm.core.hub.DynamicHub.getClassInitializationInfo:()Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
            ifnonnull 9
         7: .line 232
            aload 0 /* this */
            aload 2 /* access */
            aload 3 /* type */
            aload 5 /* hub */
            invokevirtual com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.buildClassInitializationInfo:(Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/svm/core/hub/DynamicHub;)V
         8: .line 233
            aload 2 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl.requireAnalysisIteration:()V
        end local 5 // com.oracle.svm.core.hub.DynamicHub hub
        end local 3 // com.oracle.graal.pointsto.meta.AnalysisType type
         9: .line 228
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        10: .line 237
            return
        end local 2 // com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl access
        end local 1 // org.graalvm.nativeimage.hosted.Feature$DuringAnalysisAccess a
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0   11     1       a  Lorg/graalvm/nativeimage/hosted/Feature$DuringAnalysisAccess;
            1   11     2  access  Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;
            4    9     3    type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            6    9     5     hub  Lcom/oracle/svm/core/hub/DynamicHub;
    MethodParameters:
      Name  Flags
      a     

  public void afterAnalysis(org.graalvm.nativeimage.hosted.Feature$AfterAnalysisAccess);
    descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$AfterAnalysisAccess;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // org.graalvm.nativeimage.hosted.Feature$AfterAnalysisAccess access
         0: .line 245
            aload 1 /* access */
            checkcast com.oracle.svm.hosted.FeatureImpl$AfterAnalysisAccessImpl
            invokevirtual com.oracle.svm.hosted.FeatureImpl$AfterAnalysisAccessImpl.getBigBang:()Lcom/oracle/graal/pointsto/BigBang;
            invokevirtual com.oracle.graal.pointsto.BigBang.getHostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            invokeinterface com.oracle.graal.pointsto.api.HostVM.getImageName:()Ljava/lang/String;
            astore 2 /* imageName */
        start local 2 // java.lang.String imageName
         1: .line 246
            aconst_null
            astore 3
            aconst_null
            astore 4
         2: new com.oracle.graal.pointsto.util.Timer
            dup
            aload 2 /* imageName */
            ldc "(clinit)"
            invokespecial com.oracle.graal.pointsto.util.Timer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
            invokevirtual com.oracle.graal.pointsto.util.Timer.start:()Lcom/oracle/graal/pointsto/util/Timer$StopTimer;
            astore 5 /* ignored */
        start local 5 // com.oracle.graal.pointsto.util.Timer$StopTimer ignored
         3: .line 247
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aconst_null
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.setUnsupportedFeatures:(Lcom/oracle/graal/pointsto/constraints/UnsupportedFeatures;)V
         4: .line 249
            getstatic com.oracle.svm.core.SubstrateOptions.Path:Lcom/oracle/svm/core/option/HostedOptionKey;
            invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            iconst_0
            anewarray java.lang.String
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "reports"
            aastore
            invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
            invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
            astore 6 /* path */
        start local 6 // java.lang.String path
         5: .line 250
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.$assertionsDisabled:Z
            ifne 6
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.checkDelayedInitialization:()Z
            ifne 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 252
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationFeature org.graalvm.nativeimage.hosted.Feature$AfterAnalysisAccess java.lang.String java.lang.Throwable java.lang.Throwable com.oracle.graal.pointsto.util.Timer$StopTimer java.lang.String
      StackMap stack:
            new com.oracle.svm.hosted.classinitialization.TypeInitializerGraph
            dup
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokespecial com.oracle.svm.hosted.classinitialization.TypeInitializerGraph.<init>:(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;)V
            astore 7 /* initGraph */
        start local 7 // com.oracle.svm.hosted.classinitialization.TypeInitializerGraph initGraph
         7: .line 253
            aload 7 /* initGraph */
            invokevirtual com.oracle.svm.hosted.classinitialization.TypeInitializerGraph.computeInitializerSafety:()V
         8: .line 255
            aload 0 /* this */
            aload 7 /* initGraph */
            invokevirtual com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.initializeSafeDelayedClasses:(Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;)Ljava/util/Set;
            astore 8 /* provenSafe */
        start local 8 // java.util.Set provenSafe
         9: .line 257
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options.PrintClassInitialization:Lcom/oracle/svm/core/option/HostedOptionKey;
            invokevirtual com.oracle.svm.core.option.HostedOptionKey.getValue:()Ljava/lang/Object;
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 12
        10: .line 258
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            aload 7 /* initGraph */
            aload 6 /* path */
            aload 8 /* provenSafe */
            invokestatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.reportSafeTypeInitiazliation:(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/lang/String;Ljava/util/Set;)V
        11: .line 259
            aload 0 /* this */
            aload 6 /* path */
            invokevirtual com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.reportMethodInitializationInfo:(Ljava/lang/String;)V
        end local 8 // java.util.Set provenSafe
        end local 7 // com.oracle.svm.hosted.classinitialization.TypeInitializerGraph initGraph
        end local 6 // java.lang.String path
        12: .line 261
      StackMap locals:
      StackMap stack:
            aload 5 /* ignored */
            ifnull 18
            aload 5 /* ignored */
            invokevirtual com.oracle.graal.pointsto.util.Timer$StopTimer.close:()V
            goto 18
      StackMap locals:
      StackMap stack: java.lang.Throwable
        13: astore 3
            aload 5 /* ignored */
            ifnull 14
            aload 5 /* ignored */
            invokevirtual com.oracle.graal.pointsto.util.Timer$StopTimer.close:()V
        end local 5 // com.oracle.graal.pointsto.util.Timer$StopTimer ignored
      StackMap locals:
      StackMap stack:
        14: aload 3
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        15: astore 4
            aload 3
            ifnonnull 16
            aload 4
            astore 3
            goto 17
      StackMap locals:
      StackMap stack:
        16: aload 3
            aload 4
            if_acmpeq 17
            aload 3
            aload 4
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        17: aload 3
            athrow
        18: .line 262
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String imageName
        end local 1 // org.graalvm.nativeimage.hosted.Feature$AfterAnalysisAccess access
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   19     0        this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0   19     1      access  Lorg/graalvm/nativeimage/hosted/Feature$AfterAnalysisAccess;
            1   19     2   imageName  Ljava/lang/String;
            3   14     5     ignored  Lcom/oracle/graal/pointsto/util/Timer$StopTimer;
            5   12     6        path  Ljava/lang/String;
            7   12     7   initGraph  Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;
            9   12     8  provenSafe  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
      Exception table:
        from    to  target  type
           3    12      13  any
           2    15      15  any
    MethodParameters:
        Name  Flags
      access  

  private static void reportSafeTypeInitiazliation(com.oracle.graal.pointsto.meta.AnalysisUniverse, com.oracle.svm.hosted.classinitialization.TypeInitializerGraph, java.lang.String, java.util.Set<com.oracle.graal.pointsto.meta.AnalysisType>);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/lang/String;Ljava/util/Set;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse universe
        start local 1 // com.oracle.svm.hosted.classinitialization.TypeInitializerGraph initGraph
        start local 2 // java.lang.String path
        start local 3 // java.util.Set provenSafe
         0: .line 265
            ldc "initializer dependencies"
            aload 2 /* path */
            ldc "initializer_dependencies"
            ldc "dot"
            aload 0 /* universe */
            aload 1 /* initGraph */
            invokedynamic accept(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$2(Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/io/PrintWriter;)V (6)
                  (Ljava/io/PrintWriter;)V
            invokestatic com.oracle.graal.pointsto.reports.ReportUtils.report:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V
         1: .line 277
            new java.lang.StringBuilder
            dup
            aload 3 /* provenSafe */
            invokeinterface java.util.Set.size:()I
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " classes that are considered as safe for build-time initialization"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 2 /* path */
            ldc "safe_classes"
            ldc "txt"
         2: .line 278
            aload 3 /* provenSafe */
            invokedynamic accept(Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$8(Ljava/util/Set;Ljava/io/PrintWriter;)V (6)
                  (Ljava/io/PrintWriter;)V
         3: .line 277
            invokestatic com.oracle.graal.pointsto.reports.ReportUtils.report:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V
         4: .line 279
            return
        end local 3 // java.util.Set provenSafe
        end local 2 // java.lang.String path
        end local 1 // com.oracle.svm.hosted.classinitialization.TypeInitializerGraph initGraph
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisUniverse universe
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0    universe  Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            0    5     1   initGraph  Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;
            0    5     2        path  Ljava/lang/String;
            0    5     3  provenSafe  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
    Signature: (Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/lang/String;Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;)V
    MethodParameters:
            Name  Flags
      universe    
      initGraph   
      path        
      provenSafe  

  private void reportMethodInitializationInfo(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // java.lang.String path
         0: .line 286
            invokestatic com.oracle.svm.hosted.classinitialization.InitKind.values:()[Lcom/oracle/svm/hosted/classinitialization/InitKind;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 7
      StackMap locals: com.oracle.svm.hosted.classinitialization.ClassInitializationFeature java.lang.String top int int com.oracle.svm.hosted.classinitialization.InitKind[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* kind */
        start local 2 // com.oracle.svm.hosted.classinitialization.InitKind kind
         2: .line 287
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 2 /* kind */
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.classesWithKind:(Lcom/oracle/svm/hosted/classinitialization/InitKind;)Ljava/util/Set;
            astore 6 /* classes */
        start local 6 // java.util.Set classes
         3: .line 288
            new java.lang.StringBuilder
            dup
            aload 6 /* classes */
            invokeinterface java.util.Set.size:()I
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " classes of type "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* kind */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* path */
            new java.lang.StringBuilder
            dup
            aload 2 /* kind */
            invokevirtual com.oracle.svm.hosted.classinitialization.InitKind.toString:()Ljava/lang/String;
            invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_classes"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc "txt"
         4: .line 289
            aload 6 /* classes */
            invokedynamic accept(Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$10(Ljava/util/Set;Ljava/io/PrintWriter;)V (6)
                  (Ljava/io/PrintWriter;)V
         5: .line 288
            invokestatic com.oracle.graal.pointsto.reports.ReportUtils.report:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V
        end local 6 // java.util.Set classes
        end local 2 // com.oracle.svm.hosted.classinitialization.InitKind kind
         6: .line 286
            iinc 3 1
      StackMap locals:
      StackMap stack:
         7: iload 3
            iload 4
            if_icmplt 1
         8: .line 294
            return
        end local 1 // java.lang.String path
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    9     1     path  Ljava/lang/String;
            2    6     2     kind  Lcom/oracle/svm/hosted/classinitialization/InitKind;
            3    6     6  classes  Ljava/util/Set<Ljava/lang/Class<*>;>;
    MethodParameters:
      Name  Flags
      path  

  private static boolean isRelevantForPrinting(com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.pointsto.meta.AnalysisType type
         0: .line 297
            aload 0 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isPrimitive:()Z
            ifne 1
            aload 0 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isArray:()Z
            ifne 1
            aload 0 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isReachable:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.oracle.graal.pointsto.meta.AnalysisType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
    MethodParameters:
      Name  Flags
      type  

  private static java.lang.String quote(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String className
         0: .line 301
            new java.lang.StringBuilder
            dup
            ldc "\""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* className */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.String className
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  className  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      className  

  private java.util.Set<com.oracle.graal.pointsto.meta.AnalysisType> initializeSafeDelayedClasses(com.oracle.svm.hosted.classinitialization.TypeInitializerGraph);
    descriptor: (Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;)Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // com.oracle.svm.hosted.classinitialization.TypeInitializerGraph initGraph
         0: .line 309
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* provenSafe */
        start local 2 // java.util.Set provenSafe
         1: .line 310
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            iconst_0
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.setConfigurationSealed:(Z)V
         2: .line 311
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            getstatic com.oracle.svm.hosted.classinitialization.InitKind.RUN_TIME:Lcom/oracle/svm/hosted/classinitialization/InitKind;
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.classesWithKind:(Lcom/oracle/svm/hosted/classinitialization/InitKind;)Ljava/util/Set;
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         3: .line 312
            aload 0 /* this */
            invokedynamic test(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$13(Ljava/lang/Class;)Z (7)
                  (Ljava/lang/Class;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         4: .line 313
            aload 0 /* this */
            invokedynamic test(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$14(Ljava/lang/Class;)Z (7)
                  (Ljava/lang/Class;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         5: .line 314
            aload 0 /* this */
            invokedynamic test(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;)Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$15(Ljava/lang/Class;)Z (7)
                  (Ljava/lang/Class;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 315
            aload 0 /* this */
            aload 1 /* initGraph */
            aload 2 /* provenSafe */
            invokedynamic accept(Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/util/Set;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$16(Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/util/Set;Ljava/lang/Class;)V (7)
                  (Ljava/lang/Class;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         7: .line 331
            aload 2 /* provenSafe */
            areturn
        end local 2 // java.util.Set provenSafe
        end local 1 // com.oracle.svm.hosted.classinitialization.TypeInitializerGraph initGraph
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    8     1   initGraph  Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;
            1    8     2  provenSafe  Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
    Signature: (Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;)Ljava/util/Set<Lcom/oracle/graal/pointsto/meta/AnalysisType;>;
    MethodParameters:
           Name  Flags
      initGraph  

  public void afterImageWrite(org.graalvm.nativeimage.hosted.Feature$AfterImageWriteAccess);
    descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$AfterImageWriteAccess;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // org.graalvm.nativeimage.hosted.Feature$AfterImageWriteAccess a
         0: .line 340
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.checkDelayedInitialization:()Z
            pop
         1: .line 341
            return
        end local 1 // org.graalvm.nativeimage.hosted.Feature$AfterImageWriteAccess a
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    2     1     a  Lorg/graalvm/nativeimage/hosted/Feature$AfterImageWriteAccess;
    MethodParameters:
      Name  Flags
      a     

  private void buildClassInitializationInfo(com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl, com.oracle.graal.pointsto.meta.AnalysisType, com.oracle.svm.core.hub.DynamicHub);
    descriptor: (Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/svm/core/hub/DynamicHub;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl access
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType type
        start local 3 // com.oracle.svm.core.hub.DynamicHub hub
         0: .line 345
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 2 /* type */
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.shouldInitializeAtRuntime:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 3
         1: .line 346
            aload 1 /* access */
            aload 2 /* type */
            invokestatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.buildRuntimeInitializationInfo:(Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;Lcom/oracle/graal/pointsto/meta/AnalysisType;)Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
            astore 4 /* info */
        start local 4 // com.oracle.svm.core.classinitialization.ClassInitializationInfo info
         2: .line 347
            goto 7
        end local 4 // com.oracle.svm.core.classinitialization.ClassInitializationInfo info
         3: .line 348
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.$assertionsDisabled:Z
            ifne 4
            aload 2 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isInitialized:()Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 349
      StackMap locals:
      StackMap stack:
            aload 2 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getClassInitializer:()Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            ifnonnull 5
            getstatic com.oracle.svm.core.classinitialization.ClassInitializationInfo.NO_INITIALIZER_INFO_SINGLETON:Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
            goto 6
      StackMap locals:
      StackMap stack:
         5: getstatic com.oracle.svm.core.classinitialization.ClassInitializationInfo.INITIALIZED_INFO_SINGLETON:Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
      StackMap locals:
      StackMap stack: com.oracle.svm.core.classinitialization.ClassInitializationInfo
         6: astore 4 /* info */
        start local 4 // com.oracle.svm.core.classinitialization.ClassInitializationInfo info
         7: .line 351
      StackMap locals: com.oracle.svm.core.classinitialization.ClassInitializationInfo
      StackMap stack:
            aload 3 /* hub */
            aload 4 /* info */
            aload 2 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.hasDefaultMethods:()Z
            aload 2 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.declaresDefaultMethods:()Z
            invokevirtual com.oracle.svm.core.hub.DynamicHub.setClassInitializationInfo:(Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;ZZ)V
         8: .line 352
            return
        end local 4 // com.oracle.svm.core.classinitialization.ClassInitializationInfo info
        end local 3 // com.oracle.svm.core.hub.DynamicHub hub
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType type
        end local 1 // com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl access
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    9     1  access  Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;
            0    9     2    type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            0    9     3     hub  Lcom/oracle/svm/core/hub/DynamicHub;
            2    3     4    info  Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
            7    9     4    info  Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
    MethodParameters:
        Name  Flags
      access  
      type    
      hub     

  private static com.oracle.svm.core.classinitialization.ClassInitializationInfo buildRuntimeInitializationInfo(com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl, com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;Lcom/oracle/graal/pointsto/meta/AnalysisType;)Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl access
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisType type
         0: .line 355
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.$assertionsDisabled:Z
            ifne 1
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isInitialized:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 361
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.link:()V
         2: .line 363
            goto 9
      StackMap locals:
      StackMap stack: java.lang.VerifyError
         3: pop
         4: .line 365
            aload 0 /* access */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl.getMetaAccess:()Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/VerifyError;
            aastore
            invokestatic com.oracle.svm.hosted.ExceptionSynthesizer.throwExceptionMethod:([Ljava/lang/Class;)Ljava/lang/reflect/Method;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaMethod:(Ljava/lang/reflect/Executable;)Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            astore 2 /* throwVerifyError */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod throwVerifyError
         5: .line 366
            aload 0 /* access */
            aload 2 /* throwVerifyError */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl.registerAsCompiled:(Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)V
         6: .line 367
            new com.oracle.svm.core.classinitialization.ClassInitializationInfo
            dup
            aload 2 /* throwVerifyError */
            invokestatic com.oracle.svm.hosted.meta.MethodPointer.factory:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            invokespecial com.oracle.svm.core.classinitialization.ClassInitializationInfo.<init>:(Lorg/graalvm/nativeimage/c/function/CFunctionPointer;)V
            areturn
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod throwVerifyError
         7: .line 368
      StackMap locals:
      StackMap stack: java.lang.Throwable
            pop
         8: .line 373
            getstatic com.oracle.svm.core.classinitialization.ClassInitializationInfo.FAILED_INFO_SINGLETON:Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
            areturn
         9: .line 380
      StackMap locals:
      StackMap stack:
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.$assertionsDisabled:Z
            ifne 10
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isLinked:()Z
            ifne 10
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        10: .line 381
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getClassInitializer:()Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            astore 2 /* classInitializer */
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod classInitializer
        11: .line 382
            aload 2 /* classInitializer */
            ifnull 14
        12: .line 383
            getstatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.$assertionsDisabled:Z
            ifne 13
            aload 2 /* classInitializer */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getCode:()[B
            ifnonnull 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 384
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisMethod
      StackMap stack:
            aload 0 /* access */
            aload 2 /* classInitializer */
            invokevirtual com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl.registerAsCompiled:(Lcom/oracle/graal/pointsto/meta/AnalysisMethod;)V
        14: .line 386
      StackMap locals:
      StackMap stack:
            new com.oracle.svm.core.classinitialization.ClassInitializationInfo
            dup
            aload 2 /* classInitializer */
            invokestatic com.oracle.svm.hosted.meta.MethodPointer.factory:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            invokespecial com.oracle.svm.core.classinitialization.ClassInitializationInfo.<init>:(Lorg/graalvm/nativeimage/c/function/CFunctionPointer;)V
            areturn
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisMethod classInitializer
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisType type
        end local 0 // com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl access
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0            access  Lcom/oracle/svm/hosted/FeatureImpl$DuringAnalysisAccessImpl;
            0   15     1              type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            5    7     2  throwVerifyError  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
           11   15     2  classInitializer  Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.VerifyError
           1     2       7  Class java.lang.Throwable
    MethodParameters:
        Name  Flags
      access  
      type    

  private static boolean lambda$0(java.lang.String, com.oracle.svm.hosted.classinitialization.InitKind);
    descriptor: (Ljava/lang/String;Lcom/oracle/svm/hosted/classinitialization/InitKind;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.svm.hosted.classinitialization.InitKind v
         0: .line 144
            aload 0
            aload 1 /* v */
            invokevirtual com.oracle.svm.hosted.classinitialization.InitKind.suffix:()Ljava/lang/String;
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ireturn
        end local 1 // com.oracle.svm.hosted.classinitialization.InitKind v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     v  Lcom/oracle/svm/hosted/classinitialization/InitKind;

  private static void lambda$2(com.oracle.graal.pointsto.meta.AnalysisUniverse, com.oracle.svm.hosted.classinitialization.TypeInitializerGraph, java.io.PrintWriter);
    descriptor: (Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/io/PrintWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // java.io.PrintWriter writer
         0: .line 266
            aload 2 /* writer */
            ldc "digraph initializer_dependencies {"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         1: .line 267
            aload 0
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         2: .line 268
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.isRelevantForPrinting(Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z (6)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         3: .line 269
            aload 2 /* writer */
            aload 1
            invokedynamic accept(Ljava/io/PrintWriter;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$4(Ljava/io/PrintWriter;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V (6)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         4: .line 270
            aload 0
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
         5: .line 271
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.isRelevantForPrinting(Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z (6)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
         6: .line 272
            aload 1
            aload 2 /* writer */
            invokedynamic accept(Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$6(Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V (6)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         7: .line 274
            aload 2 /* writer */
            ldc "}"
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
         8: .line 275
            return
        end local 2 // java.io.PrintWriter writer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     2  writer  Ljava/io/PrintWriter;

  private static void lambda$8(java.util.Set, java.io.PrintWriter);
    descriptor: (Ljava/util/Set;Ljava/io/PrintWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.io.PrintWriter printWriter
         0: .line 278
            aload 0
            aload 1 /* printWriter */
            invokedynamic accept(Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$9(Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V (6)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
            invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
            return
        end local 1 // java.io.PrintWriter printWriter
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     1  printWriter  Ljava/io/PrintWriter;

  private static void lambda$10(java.util.Set, java.io.PrintWriter);
    descriptor: (Ljava/util/Set;Ljava/io/PrintWriter;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // java.io.PrintWriter writer
         0: .line 289
            aload 0
            invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
         1: .line 290
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/Class.getTypeName()Ljava/lang/String; (5)
                  (Ljava/lang/Class;)Ljava/lang/String;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         2: .line 291
            invokeinterface java.util.stream.Stream.sorted:()Ljava/util/stream/Stream;
         3: .line 292
            aload 1 /* writer */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/io/PrintWriter;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  java/io/PrintWriter.println(Ljava/lang/String;)V (5)
                  (Ljava/lang/String;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
            return
        end local 1 // java.io.PrintWriter writer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     1  writer  Ljava/io/PrintWriter;

  private boolean lambda$13(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // java.lang.Class t
         0: .line 312
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 1 /* t */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.optionalLookupJavaType:(Ljava/lang/Class;)Ljava/util/Optional;
            invokevirtual java.util.Optional.isPresent:()Z
            ireturn
        end local 1 // java.lang.Class t
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    1     1     t  Ljava/lang/Class<*>;

  private boolean lambda$14(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // java.lang.Class t
         0: .line 313
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 1 /* t */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.isReachable:()Z
            ireturn
        end local 1 // java.lang.Class t
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    1     1     t  Ljava/lang/Class<*>;

  private boolean lambda$15(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 1 // java.lang.Class t
         0: .line 314
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 1 /* t */
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.canBeProvenSafe:(Ljava/lang/Class;)Z
            ireturn
        end local 1 // java.lang.Class t
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0    1     1     t  Ljava/lang/Class<*>;

  private void lambda$16(com.oracle.svm.hosted.classinitialization.TypeInitializerGraph, java.util.Set, java.lang.Class);
    descriptor: (Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/util/Set;Ljava/lang/Class;)V
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
        start local 3 // java.lang.Class c
         0: .line 316
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.metaAccess:Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
            aload 3 /* c */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
            astore 4 /* type */
        start local 4 // com.oracle.graal.pointsto.meta.AnalysisType type
         1: .line 317
            aload 1
            aload 4 /* type */
            invokevirtual com.oracle.svm.hosted.classinitialization.TypeInitializerGraph.isUnsafe:(Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z
            ifne 9
         2: .line 318
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 3 /* c */
            ldc "proven safe to initialize"
            iconst_1
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.forceInitializeHosted:(Ljava/lang/Class;Ljava/lang/String;Z)V
         3: .line 323
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.classInitializationSupport:Lcom/oracle/svm/hosted/classinitialization/ClassInitializationSupport;
            aload 3 /* c */
            invokeinterface com.oracle.svm.hosted.classinitialization.ClassInitializationSupport.shouldInitializeAtRuntime:(Ljava/lang/Class;)Z
            ifne 9
         4: .line 324
            aload 2
            aload 4 /* type */
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
         5: .line 325
            aload 4 /* type */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getClassInitializer:()Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            ifnonnull 6
            getstatic com.oracle.svm.core.classinitialization.ClassInitializationInfo.NO_INITIALIZER_INFO_SINGLETON:Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
            goto 7
         6: .line 326
      StackMap locals: com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack:
            getstatic com.oracle.svm.core.classinitialization.ClassInitializationInfo.INITIALIZED_INFO_SINGLETON:Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;
         7: .line 325
      StackMap locals:
      StackMap stack: com.oracle.svm.core.classinitialization.ClassInitializationInfo
            astore 5 /* initializationInfo */
        start local 5 // com.oracle.svm.core.classinitialization.ClassInitializationInfo initializationInfo
         8: .line 327
            aload 0 /* this */
            getfield com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.universe:Lcom/oracle/graal/pointsto/meta/AnalysisUniverse;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisUniverse.hostVM:()Lcom/oracle/graal/pointsto/api/HostVM;
            checkcast com.oracle.svm.hosted.SVMHost
            aload 4 /* type */
            invokevirtual com.oracle.svm.hosted.SVMHost.dynamicHub:(Ljdk/vm/ci/meta/ResolvedJavaType;)Lcom/oracle/svm/core/hub/DynamicHub;
            aload 5 /* initializationInfo */
            invokevirtual com.oracle.svm.core.hub.DynamicHub.setClassInitializationInfo:(Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;)V
        end local 5 // com.oracle.svm.core.classinitialization.ClassInitializationInfo initializationInfo
        end local 4 // com.oracle.graal.pointsto.meta.AnalysisType type
         9: .line 330
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Class c
        end local 0 // com.oracle.svm.hosted.classinitialization.ClassInitializationFeature this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   10     0                this  Lcom/oracle/svm/hosted/classinitialization/ClassInitializationFeature;
            0   10     3                   c  Ljava/lang/Class<*>;
            1    9     4                type  Lcom/oracle/graal/pointsto/meta/AnalysisType;
            8    9     5  initializationInfo  Lcom/oracle/svm/core/classinitialization/ClassInitializationInfo;

  private static void lambda$4(java.io.PrintWriter, com.oracle.svm.hosted.classinitialization.TypeInitializerGraph, com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Ljava/io/PrintWriter;Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType t
         0: .line 269
            aload 0
            new java.lang.StringBuilder
            dup
            aload 2 /* t */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.toClassName:()Ljava/lang/String;
            invokestatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.quote:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "[fillcolor="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1
            aload 2 /* t */
            invokevirtual com.oracle.svm.hosted.classinitialization.TypeInitializerGraph.isUnsafe:(Lcom/oracle/graal/pointsto/meta/AnalysisType;)Z
            ifeq 1
            ldc "red"
            goto 2
      StackMap locals: java.io.PrintWriter com.oracle.svm.hosted.classinitialization.TypeInitializerGraph com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack: java.io.PrintWriter java.lang.StringBuilder
         1: ldc "green"
      StackMap locals: java.io.PrintWriter com.oracle.svm.hosted.classinitialization.TypeInitializerGraph com.oracle.graal.pointsto.meta.AnalysisType
      StackMap stack: java.io.PrintWriter java.lang.StringBuilder java.lang.String
         2: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
            return
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     2     t  Lcom/oracle/graal/pointsto/meta/AnalysisType;

  private static void lambda$6(com.oracle.svm.hosted.classinitialization.TypeInitializerGraph, java.io.PrintWriter, com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Lcom/oracle/svm/hosted/classinitialization/TypeInitializerGraph;Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType t
         0: .line 272
            aload 0
            aload 2 /* t */
            invokevirtual com.oracle.svm.hosted.classinitialization.TypeInitializerGraph.getDependencies:(Lcom/oracle/graal/pointsto/meta/AnalysisType;)Ljava/util/Set;
         1: .line 273
            aload 1
            aload 2 /* t */
            invokedynamic accept(Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  com/oracle/svm/hosted/classinitialization/ClassInitializationFeature.lambda$7(Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V (6)
                  (Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
            invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
            return
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     2     t  Lcom/oracle/graal/pointsto/meta/AnalysisType;

  private static void lambda$9(java.io.PrintWriter, com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // com.oracle.graal.pointsto.meta.AnalysisType t
         0: .line 278
            aload 0
            aload 1 /* t */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.toClassName:()Ljava/lang/String;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
            return
        end local 1 // com.oracle.graal.pointsto.meta.AnalysisType t
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1     t  Lcom/oracle/graal/pointsto/meta/AnalysisType;

  private static void lambda$7(java.io.PrintWriter, com.oracle.graal.pointsto.meta.AnalysisType, com.oracle.graal.pointsto.meta.AnalysisType);
    descriptor: (Ljava/io/PrintWriter;Lcom/oracle/graal/pointsto/meta/AnalysisType;Lcom/oracle/graal/pointsto/meta/AnalysisType;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=4, locals=3, args_size=3
        start local 2 // com.oracle.graal.pointsto.meta.AnalysisType t1
         0: .line 273
            aload 0
            new java.lang.StringBuilder
            dup
            aload 1
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.toClassName:()Ljava/lang/String;
            invokestatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.quote:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " -> "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* t1 */
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.toClassName:()Ljava/lang/String;
            invokestatic com.oracle.svm.hosted.classinitialization.ClassInitializationFeature.quote:(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;
            invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
            return
        end local 2 // com.oracle.graal.pointsto.meta.AnalysisType t1
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     2    t1  Lcom/oracle/graal/pointsto/meta/AnalysisType;
}
SourceFile: "ClassInitializationFeature.java"
NestMembers:
  com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options  com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options$InitializationValueDelay  com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options$InitializationValueEager  com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options$InitializationValueRerun  com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options$InitializationValueTransformer
InnerClasses:
  public StopTimer = com.oracle.graal.pointsto.util.Timer$StopTimer of com.oracle.graal.pointsto.util.Timer
  public SubstrateForeignCallDescriptor = com.oracle.svm.core.snippets.SnippetRuntime$SubstrateForeignCallDescriptor of com.oracle.svm.core.snippets.SnippetRuntime
  public UserException = com.oracle.svm.core.util.UserError$UserException of com.oracle.svm.core.util.UserError
  public AfterAnalysisAccessImpl = com.oracle.svm.hosted.FeatureImpl$AfterAnalysisAccessImpl of com.oracle.svm.hosted.FeatureImpl
  public BeforeAnalysisAccessImpl = com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl of com.oracle.svm.hosted.FeatureImpl
  public DuringAnalysisAccessImpl = com.oracle.svm.hosted.FeatureImpl$DuringAnalysisAccessImpl of com.oracle.svm.hosted.FeatureImpl
  public DuringSetupAccessImpl = com.oracle.svm.hosted.FeatureImpl$DuringSetupAccessImpl of com.oracle.svm.hosted.FeatureImpl
  public Options = com.oracle.svm.hosted.classinitialization.ClassInitializationFeature$Options of com.oracle.svm.hosted.classinitialization.ClassInitializationFeature
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract AfterAnalysisAccess = org.graalvm.nativeimage.hosted.Feature$AfterAnalysisAccess of org.graalvm.nativeimage.hosted.Feature
  public abstract AfterImageWriteAccess = org.graalvm.nativeimage.hosted.Feature$AfterImageWriteAccess of org.graalvm.nativeimage.hosted.Feature
  public abstract BeforeAnalysisAccess = org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess of org.graalvm.nativeimage.hosted.Feature
  public abstract DuringAnalysisAccess = org.graalvm.nativeimage.hosted.Feature$DuringAnalysisAccess of org.graalvm.nativeimage.hosted.Feature
  public abstract DuringSetupAccess = org.graalvm.nativeimage.hosted.Feature$DuringSetupAccess of org.graalvm.nativeimage.hosted.Feature
    RuntimeVisibleAnnotations: 
      com.oracle.svm.core.annotate.AutomaticFeature()