public class sun.jvm.hotspot.utilities.SystemDictionaryHelper
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.SystemDictionaryHelper
super_class: java.lang.Object
{
private static sun.jvm.hotspot.oops.InstanceKlass[] klasses;
descriptor: [Lsun/jvm/hotspot/oops/InstanceKlass;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.jvm.hotspot.utilities.SystemDictionaryHelper$1
dup
invokespecial sun.jvm.hotspot.utilities.SystemDictionaryHelper$1.<init>:()V
invokestatic sun.jvm.hotspot.runtime.VM.registerVMInitializedObserver:(Lsun/jvm/hotspot/utilities/Observer;)V
1: 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 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/SystemDictionaryHelper;
private static synchronized void initialize();
descriptor: ()V
flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=0, args_size=0
0: aconst_null
putstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
1: return
LocalVariableTable:
Start End Slot Name Signature
public static synchronized sun.jvm.hotspot.oops.InstanceKlass[] getAllInstanceKlasses();
descriptor: ()[Lsun/jvm/hotspot/oops/InstanceKlass;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=3, args_size=0
0: getstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
ifnull 2
1: getstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
areturn
2: StackMap locals:
StackMap stack:
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 0
start local 0 3: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getClassLoaderDataGraph:()Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph;
astore 1
start local 1 4: aload 1
new sun.jvm.hotspot.utilities.SystemDictionaryHelper$2
dup
aload 0
invokespecial sun.jvm.hotspot.utilities.SystemDictionaryHelper$2.<init>:(Ljava/util/Vector;)V
invokevirtual sun.jvm.hotspot.classfile.ClassLoaderDataGraph.classesDo:(Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph$ClassVisitor;)V
5: aload 0
invokevirtual java.util.Vector.toArray:()[Ljava/lang/Object;
astore 2
start local 2 6: aload 2
arraylength
anewarray sun.jvm.hotspot.oops.InstanceKlass
putstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
7: aload 2
iconst_0
getstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
iconst_0
aload 2
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: getstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
new sun.jvm.hotspot.utilities.SystemDictionaryHelper$3
dup
invokespecial sun.jvm.hotspot.utilities.SystemDictionaryHelper$3.<init>:()V
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;Ljava/util/Comparator;)V
9: getstatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.klasses:[Lsun/jvm/hotspot/oops/InstanceKlass;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
3 10 0 tmp Ljava/util/Vector<Lsun/jvm/hotspot/oops/InstanceKlass;>;
4 10 1 cldg Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph;
6 10 2 tmpArray [Ljava/lang/Object;
public static sun.jvm.hotspot.oops.InstanceKlass[] findInstanceKlasses(java.lang.String);
descriptor: (Ljava/lang/String;)[Lsun/jvm/hotspot/oops/InstanceKlass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=5, args_size=1
start local 0 0: aload 0
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 0
1: invokestatic sun.jvm.hotspot.utilities.SystemDictionaryHelper.getAllInstanceKlasses:()[Lsun/jvm/hotspot/oops/InstanceKlass;
astore 1
start local 1 2: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 9
5: StackMap locals: sun.jvm.hotspot.oops.InstanceKlass[] java.util.Vector int
StackMap stack:
aload 1
iload 3
aaload
invokevirtual sun.jvm.hotspot.oops.InstanceKlass.getName:()Lsun/jvm/hotspot/oops/Symbol;
invokevirtual sun.jvm.hotspot.oops.Symbol.asString:()Ljava/lang/String;
astore 4
start local 4 6: aload 4
aload 0
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iconst_m1
if_icmpeq 8
7: aload 2
aload 1
iload 3
aaload
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
end local 4 8: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
aload 1
arraylength
if_icmplt 5
end local 3 10: aload 2
invokevirtual java.util.Vector.toArray:()[Ljava/lang/Object;
astore 3
start local 3 11: aload 3
arraylength
anewarray sun.jvm.hotspot.oops.InstanceKlass
astore 4
start local 4 12: aload 3
iconst_0
aload 4
iconst_0
aload 3
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
13: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 namePart Ljava/lang/String;
2 14 1 tmpKlasses [Lsun/jvm/hotspot/oops/InstanceKlass;
3 14 2 tmp Ljava/util/Vector<Lsun/jvm/hotspot/oops/InstanceKlass;>;
4 10 3 i I
6 8 4 name Ljava/lang/String;
11 14 3 tmpArray [Ljava/lang/Object;
12 14 4 searchResult [Lsun/jvm/hotspot/oops/InstanceKlass;
MethodParameters:
Name Flags
namePart
public static sun.jvm.hotspot.oops.InstanceKlass findInstanceKlass(java.lang.String);
descriptor: (Ljava/lang/String;)Lsun/jvm/hotspot/oops/InstanceKlass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 0
1: invokestatic sun.jvm.hotspot.runtime.VM.getVM:()Lsun/jvm/hotspot/runtime/VM;
invokevirtual sun.jvm.hotspot.runtime.VM.getClassLoaderDataGraph:()Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph;
astore 1
start local 1 2: aload 1
aload 0
invokevirtual sun.jvm.hotspot.classfile.ClassLoaderDataGraph.find:(Ljava/lang/String;)Lsun/jvm/hotspot/oops/Klass;
astore 2
start local 2 3: aload 2
ifnull 5
aload 2
instanceof sun.jvm.hotspot.oops.InstanceKlass
ifeq 5
4: aload 2
checkcast sun.jvm.hotspot.oops.InstanceKlass
areturn
5: StackMap locals: sun.jvm.hotspot.classfile.ClassLoaderDataGraph sun.jvm.hotspot.oops.Klass
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 className Ljava/lang/String;
2 6 1 cldg Lsun/jvm/hotspot/classfile/ClassLoaderDataGraph;
3 6 2 klass Lsun/jvm/hotspot/oops/Klass;
MethodParameters:
Name Flags
className
}
SourceFile: "SystemDictionaryHelper.java"
NestMembers:
sun.jvm.hotspot.utilities.SystemDictionaryHelper$1 sun.jvm.hotspot.utilities.SystemDictionaryHelper$2 sun.jvm.hotspot.utilities.SystemDictionaryHelper$3
InnerClasses:
public abstract ClassVisitor = sun.jvm.hotspot.classfile.ClassLoaderDataGraph$ClassVisitor of sun.jvm.hotspot.classfile.ClassLoaderDataGraph
sun.jvm.hotspot.utilities.SystemDictionaryHelper$1
sun.jvm.hotspot.utilities.SystemDictionaryHelper$2
sun.jvm.hotspot.utilities.SystemDictionaryHelper$3