public class sun.jvm.hotspot.ci.ciEnv extends sun.jvm.hotspot.runtime.VMObject
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.jvm.hotspot.ci.ciEnv
  super_class: sun.jvm.hotspot.runtime.VMObject
{
  private static sun.jvm.hotspot.types.AddressField dependenciesField;
    descriptor: Lsun/jvm/hotspot/types/AddressField;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static sun.jvm.hotspot.types.AddressField factoryField;
    descriptor: Lsun/jvm/hotspot/types/AddressField;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static sun.jvm.hotspot.types.AddressField compilerDataField;
    descriptor: Lsun/jvm/hotspot/types/AddressField;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static sun.jvm.hotspot.types.AddressField taskField;
    descriptor: Lsun/jvm/hotspot/types/AddressField;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static sun.jvm.hotspot.oops.CIntField systemDictionaryModificationCounterField;
    descriptor: Lsun/jvm/hotspot/oops/CIntField;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 40
            new sun.jvm.hotspot.ci.ciEnv$1
            dup
            invokespecial sun.jvm.hotspot.ci.ciEnv$1.<init>:()V
            invokestatic sun.jvm.hotspot.runtime.VM.registerVMInitializedObserver:(Ljava/util/Observer;)V
         1: .line 60
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static synchronized void initialize(sun.jvm.hotspot.types.TypeDataBase);
    descriptor: (Lsun/jvm/hotspot/types/TypeDataBase;)V
    flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // sun.jvm.hotspot.types.TypeDataBase db
         0: .line 48
            aload 0 /* db */
            ldc "ciEnv"
            invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupType:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Type;
            astore 1 /* type */
        start local 1 // sun.jvm.hotspot.types.Type type
         1: .line 49
            aload 1 /* type */
            ldc "_dependencies"
            invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
            putstatic sun.jvm.hotspot.ci.ciEnv.dependenciesField:Lsun/jvm/hotspot/types/AddressField;
         2: .line 50
            aload 1 /* type */
            ldc "_factory"
            invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
            putstatic sun.jvm.hotspot.ci.ciEnv.factoryField:Lsun/jvm/hotspot/types/AddressField;
         3: .line 51
            aload 1 /* type */
            ldc "_compiler_data"
            invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
            putstatic sun.jvm.hotspot.ci.ciEnv.compilerDataField:Lsun/jvm/hotspot/types/AddressField;
         4: .line 52
            aload 1 /* type */
            ldc "_task"
            invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
            putstatic sun.jvm.hotspot.ci.ciEnv.taskField:Lsun/jvm/hotspot/types/AddressField;
         5: .line 53
            new sun.jvm.hotspot.oops.CIntField
            dup
            aload 1 /* type */
            ldc "_system_dictionary_modification_counter"
            invokeinterface sun.jvm.hotspot.types.Type.getCIntegerField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/CIntegerField;
            lconst_0
            invokespecial sun.jvm.hotspot.oops.CIntField.<init>:(Lsun/jvm/hotspot/types/CIntegerField;J)V
            putstatic sun.jvm.hotspot.ci.ciEnv.systemDictionaryModificationCounterField:Lsun/jvm/hotspot/oops/CIntField;
         6: .line 54
            return
        end local 1 // sun.jvm.hotspot.types.Type type
        end local 0 // sun.jvm.hotspot.types.TypeDataBase db
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    db  Lsun/jvm/hotspot/types/TypeDataBase;
            1    7     1  type  Lsun/jvm/hotspot/types/Type;
    Exceptions:
      throws sun.jvm.hotspot.types.WrongTypeException
    MethodParameters:
      Name  Flags
      db    

  public void <init>(sun.jvm.hotspot.debugger.Address);
    descriptor: (Lsun/jvm/hotspot/debugger/Address;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.ci.ciEnv this
        start local 1 // sun.jvm.hotspot.debugger.Address addr
         0: .line 63
            aload 0 /* this */
            aload 1 /* addr */
            invokespecial sun.jvm.hotspot.runtime.VMObject.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
         1: .line 64
            return
        end local 1 // sun.jvm.hotspot.debugger.Address addr
        end local 0 // sun.jvm.hotspot.ci.ciEnv this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/ci/ciEnv;
            0    2     1  addr  Lsun/jvm/hotspot/debugger/Address;
    MethodParameters:
      Name  Flags
      addr  

  public sun.jvm.hotspot.opto.Compile compilerData();
    descriptor: ()Lsun/jvm/hotspot/opto/Compile;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.jvm.hotspot.ci.ciEnv this
         0: .line 67
            getstatic sun.jvm.hotspot.ci.ciEnv.compilerDataField:Lsun/jvm/hotspot/types/AddressField;
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ci.ciEnv.getAddress:()Lsun/jvm/hotspot/debugger/Address;
            invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
            astore 1 /* addr */
        start local 1 // sun.jvm.hotspot.debugger.Address addr
         1: .line 68
            aload 1 /* addr */
            ifnonnull 3
         2: .line 69
            aconst_null
            areturn
         3: .line 71
      StackMap locals: sun.jvm.hotspot.debugger.Address
      StackMap stack:
            new sun.jvm.hotspot.opto.Compile
            dup
            aload 1 /* addr */
            invokespecial sun.jvm.hotspot.opto.Compile.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
            areturn
        end local 1 // sun.jvm.hotspot.debugger.Address addr
        end local 0 // sun.jvm.hotspot.ci.ciEnv this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/jvm/hotspot/ci/ciEnv;
            1    4     1  addr  Lsun/jvm/hotspot/debugger/Address;

  public sun.jvm.hotspot.ci.ciObjectFactory factory();
    descriptor: ()Lsun/jvm/hotspot/ci/ciObjectFactory;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.ci.ciEnv this
         0: .line 75
            new sun.jvm.hotspot.ci.ciObjectFactory
            dup
            getstatic sun.jvm.hotspot.ci.ciEnv.factoryField:Lsun/jvm/hotspot/types/AddressField;
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ci.ciEnv.getAddress:()Lsun/jvm/hotspot/debugger/Address;
            invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
            invokespecial sun.jvm.hotspot.ci.ciObjectFactory.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
            areturn
        end local 0 // sun.jvm.hotspot.ci.ciEnv this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/ci/ciEnv;

  public sun.jvm.hotspot.compiler.CompileTask task();
    descriptor: ()Lsun/jvm/hotspot/compiler/CompileTask;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.ci.ciEnv this
         0: .line 79
            new sun.jvm.hotspot.compiler.CompileTask
            dup
            getstatic sun.jvm.hotspot.ci.ciEnv.taskField:Lsun/jvm/hotspot/types/AddressField;
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ci.ciEnv.getAddress:()Lsun/jvm/hotspot/debugger/Address;
            invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
            invokespecial sun.jvm.hotspot.compiler.CompileTask.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
            areturn
        end local 0 // sun.jvm.hotspot.ci.ciEnv this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/ci/ciEnv;

  public void dumpReplayData(java.io.PrintStream);
    descriptor: (Ljava/io/PrintStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // sun.jvm.hotspot.ci.ciEnv this
        start local 1 // java.io.PrintStream out
         0: .line 83
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "JvmtiExport can_access_local_variables "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 84
            invokestatic sun.jvm.hotspot.prims.JvmtiExport.canAccessLocalVariables:()Z
            ifeq 2
            bipush 49
            goto 3
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream
      StackMap stack: java.io.PrintStream java.lang.StringBuilder
         2: bipush 48
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream
      StackMap stack: java.io.PrintStream java.lang.StringBuilder int
         3: invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 83
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         5: .line 85
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "JvmtiExport can_hotswap_or_post_breakpoint "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 86
            invokestatic sun.jvm.hotspot.prims.JvmtiExport.canHotswapOrPostBreakpoint:()Z
            ifeq 7
            bipush 49
            goto 8
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream
      StackMap stack: java.io.PrintStream java.lang.StringBuilder
         7: bipush 48
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream
      StackMap stack: java.io.PrintStream java.lang.StringBuilder int
         8: invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 85
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 87
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "JvmtiExport can_post_on_exceptions "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 88
            invokestatic sun.jvm.hotspot.prims.JvmtiExport.canPostOnExceptions:()Z
            ifeq 12
            bipush 49
            goto 13
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream
      StackMap stack: java.io.PrintStream java.lang.StringBuilder
        12: bipush 48
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream
      StackMap stack: java.io.PrintStream java.lang.StringBuilder int
        13: invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 87
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        15: .line 90
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ci.ciEnv.factory:()Lsun/jvm/hotspot/ci/ciObjectFactory;
            invokevirtual sun.jvm.hotspot.ci.ciObjectFactory.objects:()Lsun/jvm/hotspot/utilities/GrowableArray;
            astore 2 /* objects */
        start local 2 // sun.jvm.hotspot.utilities.GrowableArray objects
        16: .line 91
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "# "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* objects */
            invokevirtual sun.jvm.hotspot.utilities.GrowableArray.length:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " ciObject found"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        17: .line 92
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        18: goto 23
        19: .line 93
      StackMap locals: sun.jvm.hotspot.utilities.GrowableArray int
      StackMap stack:
            aload 2 /* objects */
            iload 3 /* i */
            invokevirtual sun.jvm.hotspot.utilities.GrowableArray.at:(I)Ljava/lang/Object;
            checkcast sun.jvm.hotspot.ci.ciMetadata
            astore 4 /* o */
        start local 4 // sun.jvm.hotspot.ci.ciMetadata o
        20: .line 94
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "# ciMetadata"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 3 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " @ "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* o */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        21: .line 95
            aload 4 /* o */
            aload 1 /* out */
            invokevirtual sun.jvm.hotspot.ci.ciMetadata.dumpReplayData:(Ljava/io/PrintStream;)V
        end local 4 // sun.jvm.hotspot.ci.ciMetadata o
        22: .line 92
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 3 /* i */
            aload 2 /* objects */
            invokevirtual sun.jvm.hotspot.utilities.GrowableArray.length:()I
            if_icmplt 19
        end local 3 // int i
        24: .line 97
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ci.ciEnv.task:()Lsun/jvm/hotspot/compiler/CompileTask;
            astore 3 /* task */
        start local 3 // sun.jvm.hotspot.compiler.CompileTask task
        25: .line 98
            aload 3 /* task */
            invokevirtual sun.jvm.hotspot.compiler.CompileTask.method:()Lsun/jvm/hotspot/oops/Method;
            astore 4 /* method */
        start local 4 // sun.jvm.hotspot.oops.Method method
        26: .line 99
            aload 3 /* task */
            invokevirtual sun.jvm.hotspot.compiler.CompileTask.osrBci:()I
            istore 5 /* entryBci */
        start local 5 // int entryBci
        27: .line 100
            aload 3 /* task */
            invokevirtual sun.jvm.hotspot.compiler.CompileTask.compLevel:()I
            istore 6 /* compLevel */
        start local 6 // int compLevel
        28: .line 101
            aload 1 /* out */
            new java.lang.StringBuilder
            dup
            ldc "compile "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* method */
            invokevirtual sun.jvm.hotspot.oops.Method.nameAsAscii:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        29: .line 102
            iload 5 /* entryBci */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 6 /* compLevel */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        30: .line 101
            invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
        31: .line 103
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ci.ciEnv.compilerData:()Lsun/jvm/hotspot/opto/Compile;
            astore 7 /* compiler */
        start local 7 // sun.jvm.hotspot.opto.Compile compiler
        32: .line 104
            aload 7 /* compiler */
            ifnull 34
        33: .line 106
            aload 7 /* compiler */
            aload 1 /* out */
            invokevirtual sun.jvm.hotspot.opto.Compile.dumpInlineData:(Ljava/io/PrintStream;)V
        34: .line 108
      StackMap locals: sun.jvm.hotspot.ci.ciEnv java.io.PrintStream sun.jvm.hotspot.utilities.GrowableArray sun.jvm.hotspot.compiler.CompileTask sun.jvm.hotspot.oops.Method int int sun.jvm.hotspot.opto.Compile
      StackMap stack:
            aload 1 /* out */
            invokevirtual java.io.PrintStream.println:()V
        35: .line 109
            return
        end local 7 // sun.jvm.hotspot.opto.Compile compiler
        end local 6 // int compLevel
        end local 5 // int entryBci
        end local 4 // sun.jvm.hotspot.oops.Method method
        end local 3 // sun.jvm.hotspot.compiler.CompileTask task
        end local 2 // sun.jvm.hotspot.utilities.GrowableArray objects
        end local 1 // java.io.PrintStream out
        end local 0 // sun.jvm.hotspot.ci.ciEnv this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   36     0       this  Lsun/jvm/hotspot/ci/ciEnv;
            0   36     1        out  Ljava/io/PrintStream;
           16   36     2    objects  Lsun/jvm/hotspot/utilities/GrowableArray<Lsun/jvm/hotspot/ci/ciMetadata;>;
           18   24     3          i  I
           20   22     4          o  Lsun/jvm/hotspot/ci/ciMetadata;
           25   36     3       task  Lsun/jvm/hotspot/compiler/CompileTask;
           26   36     4     method  Lsun/jvm/hotspot/oops/Method;
           27   36     5   entryBci  I
           28   36     6  compLevel  I
           32   36     7   compiler  Lsun/jvm/hotspot/opto/Compile;
    MethodParameters:
      Name  Flags
      out   
}
SourceFile: "ciEnv.java"
NestMembers:
  sun.jvm.hotspot.ci.ciEnv$1
InnerClasses:
  sun.jvm.hotspot.ci.ciEnv$1