public class com.sun.tools.javac.util.IntHashTable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.util.IntHashTable
super_class: java.lang.Object
{
private static final int DEFAULT_INITIAL_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 64
protected java.lang.Object[] objs;
descriptor: [Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
protected int[] ints;
descriptor: [I
flags: (0x0004) ACC_PROTECTED
protected int mask;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int num_bindings;
descriptor: I
flags: (0x0004) ACC_PROTECTED
private static final java.lang.Object DELETED;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
bipush 64
anewarray java.lang.Object
putfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
2: aload 0
bipush 64
newarray 10
putfield com.sun.tools.javac.util.IntHashTable.ints:[I
3: aload 0
bipush 63
putfield com.sun.tools.javac.util.IntHashTable.mask:I
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/util/IntHashTable;
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: iconst_4
istore 2
start local 2 2: goto 4
3: StackMap locals: com.sun.tools.javac.util.IntHashTable int int
StackMap stack:
iinc 2 1
4: StackMap locals:
StackMap stack:
iload 1
iconst_1
iload 2
ishl
if_icmpgt 3
5: iconst_1
iload 2
ishl
istore 1
6: aload 0
iload 1
anewarray java.lang.Object
putfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
7: aload 0
iload 1
newarray 10
putfield com.sun.tools.javac.util.IntHashTable.ints:[I
8: aload 0
iload 1
iconst_1
isub
putfield com.sun.tools.javac.util.IntHashTable.mask:I
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 10 1 capacity I
2 10 2 log2Size I
MethodParameters:
Name Flags
capacity
public int hash(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 1 1 key Ljava/lang/Object;
MethodParameters:
Name Flags
key
public int lookup(java.lang.Object, int);
descriptor: (Ljava/lang/Object;I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: iload 2
iload 2
bipush 15
iushr
ixor
istore 4
start local 4 1: iload 2
iload 2
bipush 6
ishl
ixor
iconst_1
ior
istore 5
start local 5 2: iconst_m1
istore 6
start local 6 3: iload 4
aload 0
getfield com.sun.tools.javac.util.IntHashTable.mask:I
iand
istore 7
start local 7 4: StackMap locals: com.sun.tools.javac.util.IntHashTable java.lang.Object int top int int int int
StackMap stack:
aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 7
aaload
astore 3
start local 3 5: aload 3
aload 1
if_acmpne 7
6: iload 7
ireturn
7: StackMap locals: com.sun.tools.javac.util.IntHashTable java.lang.Object int java.lang.Object int int int int
StackMap stack:
aload 3
ifnonnull 11
8: iload 6
iflt 9
iload 6
goto 10
StackMap locals:
StackMap stack:
9: iload 7
StackMap locals:
StackMap stack: int
10: ireturn
11: StackMap locals:
StackMap stack:
aload 3
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
if_acmpne 13
iload 6
ifge 13
12: iload 7
istore 6
13: StackMap locals:
StackMap stack:
iload 7
iload 5
iadd
aload 0
getfield com.sun.tools.javac.util.IntHashTable.mask:I
iand
istore 7
end local 3 14: goto 4
end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 15 1 key Ljava/lang/Object;
0 15 2 hash I
5 14 3 node Ljava/lang/Object;
1 15 4 hash1 I
2 15 5 hash2 I
3 15 6 deleted I
4 15 7 i I
MethodParameters:
Name Flags
key
hash
public int lookup(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
aload 1
invokevirtual com.sun.tools.javac.util.IntHashTable.hash:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.IntHashTable.lookup:(Ljava/lang/Object;I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 1 1 key Ljava/lang/Object;
MethodParameters:
Name Flags
key
public int getFromIndex(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 1
aaload
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
if_acmpne 3
StackMap locals: java.lang.Object
StackMap stack:
2: iconst_m1
goto 4
StackMap locals:
StackMap stack:
3: aload 0
getfield com.sun.tools.javac.util.IntHashTable.ints:[I
iload 1
iaload
StackMap locals:
StackMap stack: int
4: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 5 1 index I
1 5 2 node Ljava/lang/Object;
MethodParameters:
Name Flags
index
public int putAtIndex(java.lang.Object, int, int);
descriptor: (Ljava/lang/Object;II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 3
aaload
astore 4
start local 4 1: aload 4
ifnull 2
aload 4
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
if_acmpne 9
2: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 3
aload 1
aastore
3: aload 0
getfield com.sun.tools.javac.util.IntHashTable.ints:[I
iload 3
iload 2
iastore
4: aload 4
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
if_acmpeq 6
5: aload 0
dup
getfield com.sun.tools.javac.util.IntHashTable.num_bindings:I
iconst_1
iadd
putfield com.sun.tools.javac.util.IntHashTable.num_bindings:I
6: StackMap locals:
StackMap stack:
iconst_3
aload 0
getfield com.sun.tools.javac.util.IntHashTable.num_bindings:I
imul
iconst_2
aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
arraylength
imul
if_icmplt 8
7: aload 0
invokevirtual com.sun.tools.javac.util.IntHashTable.rehash:()V
8: StackMap locals:
StackMap stack:
iconst_m1
ireturn
9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.util.IntHashTable.ints:[I
iload 3
iaload
istore 5
start local 5 10: aload 0
getfield com.sun.tools.javac.util.IntHashTable.ints:[I
iload 3
iload 2
iastore
11: iload 5
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 12 1 key Ljava/lang/Object;
0 12 2 value I
0 12 3 index I
1 12 4 old Ljava/lang/Object;
10 12 5 oldValue I
MethodParameters:
Name Flags
key
value
index
public int remove(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.javac.util.IntHashTable.lookup:(Ljava/lang/Object;)I
istore 2
start local 2 1: aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 2
aaload
astore 3
start local 3 2: aload 3
ifnull 3
aload 3
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
if_acmpne 4
3: StackMap locals: int java.lang.Object
StackMap stack:
iconst_m1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 2
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
aastore
5: aload 0
getfield com.sun.tools.javac.util.IntHashTable.ints:[I
iload 2
iaload
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/util/IntHashTable;
0 6 1 key Ljava/lang/Object;
1 6 2 index I
2 6 3 old Ljava/lang/Object;
MethodParameters:
Name Flags
key
protected void rehash();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=10, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
astore 1
start local 1 1: aload 0
getfield com.sun.tools.javac.util.IntHashTable.ints:[I
astore 2
start local 2 2: aload 1
arraylength
istore 3
start local 3 3: iload 3
iconst_1
ishl
istore 4
start local 4 4: iload 4
anewarray java.lang.Object
astore 5
start local 5 5: iload 4
newarray 10
astore 6
start local 6 6: iload 4
iconst_1
isub
istore 7
start local 7 7: aload 0
aload 5
putfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
8: aload 0
aload 6
putfield com.sun.tools.javac.util.IntHashTable.ints:[I
9: aload 0
iload 7
putfield com.sun.tools.javac.util.IntHashTable.mask:I
10: aload 0
iconst_0
putfield com.sun.tools.javac.util.IntHashTable.num_bindings:I
11: aload 2
arraylength
istore 9
start local 9 12: goto 16
13: StackMap locals: com.sun.tools.javac.util.IntHashTable java.lang.Object[] int[] int int java.lang.Object[] int[] int top int
StackMap stack:
aload 1
iload 9
aaload
astore 8
start local 8 14: aload 8
ifnull 16
aload 8
getstatic com.sun.tools.javac.util.IntHashTable.DELETED:Ljava/lang/Object;
if_acmpeq 16
15: aload 0
aload 8
aload 2
iload 9
iaload
aload 0
aload 8
aload 0
aload 8
invokevirtual com.sun.tools.javac.util.IntHashTable.hash:(Ljava/lang/Object;)I
invokevirtual com.sun.tools.javac.util.IntHashTable.lookup:(Ljava/lang/Object;I)I
invokevirtual com.sun.tools.javac.util.IntHashTable.putAtIndex:(Ljava/lang/Object;II)I
pop
end local 8 16: StackMap locals:
StackMap stack:
iinc 9 -1
iload 9
ifge 13
end local 9 17: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/tools/javac/util/IntHashTable;
1 18 1 oldObjsTable [Ljava/lang/Object;
2 18 2 oldIntsTable [I
3 18 3 oldCapacity I
4 18 4 newCapacity I
5 18 5 newObjTable [Ljava/lang/Object;
6 18 6 newIntTable [I
7 18 7 newMask I
14 16 8 key Ljava/lang/Object;
12 17 9 i I
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
arraylength
istore 1
start local 1 1: goto 3
2: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.tools.javac.util.IntHashTable.objs:[Ljava/lang/Object;
iload 1
aconst_null
aastore
3: StackMap locals:
StackMap stack:
iinc 1 -1
iload 1
ifge 2
end local 1 4: aload 0
iconst_0
putfield com.sun.tools.javac.util.IntHashTable.num_bindings:I
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/javac/util/IntHashTable;
1 4 1 i I
}
SourceFile: "IntHashTable.java"