public class sun.jvm.hotspot.utilities.CompactHashTable extends sun.jvm.hotspot.runtime.VMObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.jvm.hotspot.utilities.CompactHashTable
super_class: sun.jvm.hotspot.runtime.VMObject
{
private static sun.jvm.hotspot.types.CIntegerField bucketCountField;
descriptor: Lsun/jvm/hotspot/types/CIntegerField;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static sun.jvm.hotspot.types.CIntegerField entryCountField;
descriptor: Lsun/jvm/hotspot/types/CIntegerField;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static sun.jvm.hotspot.types.AddressField baseAddressField;
descriptor: Lsun/jvm/hotspot/types/AddressField;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static sun.jvm.hotspot.types.AddressField bucketsField;
descriptor: Lsun/jvm/hotspot/types/AddressField;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static sun.jvm.hotspot.types.AddressField entriesField;
descriptor: Lsun/jvm/hotspot/types/AddressField;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static long uintSize;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int BUCKET_OFFSET_MASK;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int BUCKET_TYPE_SHIFT;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int VALUE_ONLY_BUCKET_TYPE;
descriptor: I
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.CompactHashTable$1
dup
invokespecial sun.jvm.hotspot.utilities.CompactHashTable$1.<init>:()V
invokestatic sun.jvm.hotspot.runtime.VM.registerVMInitializedObserver:(Ljava/util/Observer;)V
1: ldc 1073741823
putstatic sun.jvm.hotspot.utilities.CompactHashTable.BUCKET_OFFSET_MASK:I
2: bipush 30
putstatic sun.jvm.hotspot.utilities.CompactHashTable.BUCKET_TYPE_SHIFT:I
3: iconst_1
putstatic sun.jvm.hotspot.utilities.CompactHashTable.VALUE_ONLY_BUCKET_TYPE:I
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=2, locals=2, args_size=1
start local 0 0: aload 0
ldc "SymbolCompactHashTable"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupType:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Type;
astore 1
start local 1 1: aload 1
ldc "_base_address"
invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
putstatic sun.jvm.hotspot.utilities.CompactHashTable.baseAddressField:Lsun/jvm/hotspot/types/AddressField;
2: aload 1
ldc "_bucket_count"
invokeinterface sun.jvm.hotspot.types.Type.getCIntegerField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/CIntegerField;
putstatic sun.jvm.hotspot.utilities.CompactHashTable.bucketCountField:Lsun/jvm/hotspot/types/CIntegerField;
3: aload 1
ldc "_entry_count"
invokeinterface sun.jvm.hotspot.types.Type.getCIntegerField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/CIntegerField;
putstatic sun.jvm.hotspot.utilities.CompactHashTable.entryCountField:Lsun/jvm/hotspot/types/CIntegerField;
4: aload 1
ldc "_buckets"
invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
putstatic sun.jvm.hotspot.utilities.CompactHashTable.bucketsField:Lsun/jvm/hotspot/types/AddressField;
5: aload 1
ldc "_entries"
invokeinterface sun.jvm.hotspot.types.Type.getAddressField:(Ljava/lang/String;)Lsun/jvm/hotspot/types/AddressField;
putstatic sun.jvm.hotspot.utilities.CompactHashTable.entriesField:Lsun/jvm/hotspot/types/AddressField;
6: aload 0
ldc "u4"
invokeinterface sun.jvm.hotspot.types.TypeDataBase.lookupType:(Ljava/lang/String;)Lsun/jvm/hotspot/types/Type;
invokeinterface sun.jvm.hotspot.types.Type.getSize:()J
putstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 db Lsun/jvm/hotspot/types/TypeDataBase;
1 8 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 start local 1 0: aload 0
aload 1
invokespecial sun.jvm.hotspot.runtime.VMObject.<init>:(Lsun/jvm/hotspot/debugger/Address;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/CompactHashTable;
0 2 1 addr Lsun/jvm/hotspot/debugger/Address;
MethodParameters:
Name Flags
addr
private int bucketCount();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic sun.jvm.hotspot.utilities.CompactHashTable.bucketCountField:Lsun/jvm/hotspot/types/CIntegerField;
aload 0
getfield sun.jvm.hotspot.utilities.CompactHashTable.addr:Lsun/jvm/hotspot/debugger/Address;
invokeinterface sun.jvm.hotspot.types.CIntegerField.getValue:(Lsun/jvm/hotspot/debugger/Address;)J
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/CompactHashTable;
private boolean isValueOnlyBucket(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
getstatic sun.jvm.hotspot.utilities.CompactHashTable.BUCKET_TYPE_SHIFT:I
ishr
getstatic sun.jvm.hotspot.utilities.CompactHashTable.VALUE_ONLY_BUCKET_TYPE:I
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/jvm/hotspot/utilities/CompactHashTable;
0 2 1 bucket_info I
MethodParameters:
Name Flags
bucket_info
private int bucketOffset(int);
descriptor: (I)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
getstatic sun.jvm.hotspot.utilities.CompactHashTable.BUCKET_OFFSET_MASK:I
iand
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/jvm/hotspot/utilities/CompactHashTable;
0 1 1 bucket_info I
MethodParameters:
Name Flags
bucket_info
public sun.jvm.hotspot.oops.Symbol probe(byte[], long);
descriptor: ([BJ)Lsun/jvm/hotspot/oops/Symbol;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=20, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual sun.jvm.hotspot.utilities.CompactHashTable.bucketCount:()I
ifgt 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
getstatic sun.jvm.hotspot.utilities.CompactHashTable.baseAddressField:Lsun/jvm/hotspot/types/AddressField;
aload 0
getfield sun.jvm.hotspot.utilities.CompactHashTable.addr:Lsun/jvm/hotspot/debugger/Address;
invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
astore 7
start local 7 3: getstatic sun.jvm.hotspot.utilities.CompactHashTable.bucketsField:Lsun/jvm/hotspot/types/AddressField;
aload 0
getfield sun.jvm.hotspot.utilities.CompactHashTable.addr:Lsun/jvm/hotspot/debugger/Address;
invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
astore 8
start local 8 4: lload 2
aload 0
invokevirtual sun.jvm.hotspot.utilities.CompactHashTable.bucketCount:()I
i2l
lrem
lstore 9
start local 9 5: aload 8
lload 9
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
lmul
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
iconst_1
invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
l2i
istore 11
start local 11 6: aload 0
iload 11
invokevirtual sun.jvm.hotspot.utilities.CompactHashTable.bucketOffset:(I)I
istore 12
start local 12 7: aload 8
lload 9
lconst_1
ladd
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
lmul
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
iconst_1
invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
l2i
istore 13
start local 13 8: aload 0
iload 13
invokevirtual sun.jvm.hotspot.utilities.CompactHashTable.bucketOffset:(I)I
istore 14
start local 14 9: getstatic sun.jvm.hotspot.utilities.CompactHashTable.entriesField:Lsun/jvm/hotspot/types/AddressField;
aload 0
getfield sun.jvm.hotspot.utilities.CompactHashTable.addr:Lsun/jvm/hotspot/debugger/Address;
invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
iload 12
i2l
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
lmul
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
astore 15
start local 15 10: aload 0
iload 11
invokevirtual sun.jvm.hotspot.utilities.CompactHashTable.isValueOnlyBucket:(I)Z
ifeq 15
11: aload 15
lconst_0
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
iconst_1
invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
lstore 4
start local 4 12: aload 7
lload 4
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
invokestatic sun.jvm.hotspot.oops.Symbol.create:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Symbol;
astore 6
start local 6 13: aload 6
aload 1
invokevirtual sun.jvm.hotspot.oops.Symbol.equals:([B)Z
ifeq 26
14: aload 6
areturn
end local 6 end local 4 15: StackMap locals: sun.jvm.hotspot.utilities.CompactHashTable byte[] long top top top sun.jvm.hotspot.debugger.Address sun.jvm.hotspot.debugger.Address long int int int int sun.jvm.hotspot.debugger.Address
StackMap stack:
getstatic sun.jvm.hotspot.utilities.CompactHashTable.entriesField:Lsun/jvm/hotspot/types/AddressField;
aload 0
getfield sun.jvm.hotspot.utilities.CompactHashTable.addr:Lsun/jvm/hotspot/debugger/Address;
invokeinterface sun.jvm.hotspot.types.AddressField.getValue:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/debugger/Address;
iload 14
i2l
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
lmul
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
astore 16
start local 16 16: goto 25
17: StackMap locals: sun.jvm.hotspot.debugger.Address
StackMap stack:
aload 15
lconst_0
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
iconst_1
invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
lstore 17
start local 17 18: lload 17
lload 2
lcmp
ifne 24
19: aload 15
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
iconst_1
invokeinterface sun.jvm.hotspot.debugger.Address.getCIntegerAt:(JJZ)J
lstore 4
start local 4 20: aload 7
lload 4
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
astore 19
start local 19 21: aload 19
invokestatic sun.jvm.hotspot.oops.Symbol.create:(Lsun/jvm/hotspot/debugger/Address;)Lsun/jvm/hotspot/oops/Symbol;
astore 6
start local 6 22: aload 6
aload 1
invokevirtual sun.jvm.hotspot.oops.Symbol.equals:([B)Z
ifeq 24
23: aload 6
areturn
end local 19 end local 6 end local 4 24: StackMap locals: long
StackMap stack:
aload 15
ldc 2
getstatic sun.jvm.hotspot.utilities.CompactHashTable.uintSize:J
lmul
invokeinterface sun.jvm.hotspot.debugger.Address.addOffsetTo:(J)Lsun/jvm/hotspot/debugger/Address;
astore 15
end local 17 25: StackMap locals:
StackMap stack:
aload 15
aload 16
invokeinterface sun.jvm.hotspot.debugger.Address.lessThan:(Lsun/jvm/hotspot/debugger/Address;)Z
ifne 17
end local 16 26: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 15 end local 14 end local 13 end local 12 end local 11 end local 9 end local 8 end local 7 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lsun/jvm/hotspot/utilities/CompactHashTable;
0 27 1 name [B
0 27 2 hash J
12 15 4 symOffset J
20 24 4 symOffset J
13 15 6 sym Lsun/jvm/hotspot/oops/Symbol;
22 24 6 sym Lsun/jvm/hotspot/oops/Symbol;
3 27 7 baseAddress Lsun/jvm/hotspot/debugger/Address;
4 27 8 bucket Lsun/jvm/hotspot/debugger/Address;
5 27 9 index J
6 27 11 bucketInfo I
7 27 12 bucketOffset I
8 27 13 nextBucketInfo I
9 27 14 nextBucketOffset I
10 27 15 entry Lsun/jvm/hotspot/debugger/Address;
16 26 16 entryMax Lsun/jvm/hotspot/debugger/Address;
18 25 17 symHash J
21 24 19 symAddr Lsun/jvm/hotspot/debugger/Address;
MethodParameters:
Name Flags
name
hash
}
SourceFile: "CompactHashTable.java"
NestMembers:
sun.jvm.hotspot.utilities.CompactHashTable$1
InnerClasses:
sun.jvm.hotspot.utilities.CompactHashTable$1