public final class org.apache.lucene.util.BitUtil
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.lucene.util.BitUtil
super_class: java.lang.Object
{
private static final long[] MAGIC;
descriptor: [J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final short[] SHIFT;
descriptor: [S
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: .line 25
bipush 7
newarray 11
dup
iconst_0
1: .line 26
ldc 6148914691236517205
lastore
dup
iconst_1
ldc 3689348814741910323
lastore
dup
iconst_2
2: .line 27
ldc 1085102592571150095
lastore
dup
iconst_3
ldc 71777214294589695
lastore
dup
iconst_4
3: .line 28
ldc 281470681808895
lastore
dup
iconst_5
ldc 4294967295
lastore
dup
bipush 6
4: .line 29
ldc -6148914691236517206
lastore
5: .line 25
putstatic org.apache.lucene.util.BitUtil.MAGIC:[J
6: .line 32
iconst_5
newarray 9
dup
iconst_0
iconst_1
sastore
dup
iconst_1
iconst_2
sastore
dup
iconst_2
iconst_4
sastore
dup
iconst_3
bipush 8
sastore
dup
iconst_4
bipush 16
sastore
putstatic org.apache.lucene.util.BitUtil.SHIFT:[S
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 // org.apache.lucene.util.BitUtil this
0: .line 34
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.apache.lucene.util.BitUtil this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/lucene/util/BitUtil;
public static long pop_array(long[], int, int);
descriptor: ([JII)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 // long[] arr
start local 1 // int wordOffset
start local 2 // int numWords
0: .line 42
lconst_0
lstore 3 /* popCount */
start local 3 // long popCount
1: .line 43
iload 1 /* wordOffset */
istore 5 /* i */
start local 5 // int i
2: iload 1 /* wordOffset */
iload 2 /* numWords */
iadd
istore 6 /* end */
start local 6 // int end
3: goto 6
4: .line 44
StackMap locals: long int int
StackMap stack:
lload 3 /* popCount */
aload 0 /* arr */
iload 5 /* i */
laload
invokestatic java.lang.Long.bitCount:(J)I
i2l
ladd
lstore 3 /* popCount */
5: .line 43
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 5 /* i */
iload 6 /* end */
if_icmplt 4
end local 6 // int end
end local 5 // int i
7: .line 46
lload 3 /* popCount */
lreturn
end local 3 // long popCount
end local 2 // int numWords
end local 1 // int wordOffset
end local 0 // long[] arr
LocalVariableTable:
Start End Slot Name Signature
0 8 0 arr [J
0 8 1 wordOffset I
0 8 2 numWords I
1 8 3 popCount J
2 7 5 i I
3 7 6 end I
MethodParameters:
Name Flags
arr
wordOffset
numWords
public static long pop_intersect(long[], long[], int, int);
descriptor: ([J[JII)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=4
start local 0 // long[] arr1
start local 1 // long[] arr2
start local 2 // int wordOffset
start local 3 // int numWords
0: .line 52
lconst_0
lstore 4 /* popCount */
start local 4 // long popCount
1: .line 53
iload 2 /* wordOffset */
istore 6 /* i */
start local 6 // int i
2: iload 2 /* wordOffset */
iload 3 /* numWords */
iadd
istore 7 /* end */
start local 7 // int end
3: goto 6
4: .line 54
StackMap locals: long int int
StackMap stack:
lload 4 /* popCount */
aload 0 /* arr1 */
iload 6 /* i */
laload
aload 1 /* arr2 */
iload 6 /* i */
laload
land
invokestatic java.lang.Long.bitCount:(J)I
i2l
ladd
lstore 4 /* popCount */
5: .line 53
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 6 /* i */
iload 7 /* end */
if_icmplt 4
end local 7 // int end
end local 6 // int i
7: .line 56
lload 4 /* popCount */
lreturn
end local 4 // long popCount
end local 3 // int numWords
end local 2 // int wordOffset
end local 1 // long[] arr2
end local 0 // long[] arr1
LocalVariableTable:
Start End Slot Name Signature
0 8 0 arr1 [J
0 8 1 arr2 [J
0 8 2 wordOffset I
0 8 3 numWords I
1 8 4 popCount J
2 7 6 i I
3 7 7 end I
MethodParameters:
Name Flags
arr1
arr2
wordOffset
numWords
public static long pop_union(long[], long[], int, int);
descriptor: ([J[JII)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=4
start local 0 // long[] arr1
start local 1 // long[] arr2
start local 2 // int wordOffset
start local 3 // int numWords
0: .line 62
lconst_0
lstore 4 /* popCount */
start local 4 // long popCount
1: .line 63
iload 2 /* wordOffset */
istore 6 /* i */
start local 6 // int i
2: iload 2 /* wordOffset */
iload 3 /* numWords */
iadd
istore 7 /* end */
start local 7 // int end
3: goto 6
4: .line 64
StackMap locals: long int int
StackMap stack:
lload 4 /* popCount */
aload 0 /* arr1 */
iload 6 /* i */
laload
aload 1 /* arr2 */
iload 6 /* i */
laload
lor
invokestatic java.lang.Long.bitCount:(J)I
i2l
ladd
lstore 4 /* popCount */
5: .line 63
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 6 /* i */
iload 7 /* end */
if_icmplt 4
end local 7 // int end
end local 6 // int i
7: .line 66
lload 4 /* popCount */
lreturn
end local 4 // long popCount
end local 3 // int numWords
end local 2 // int wordOffset
end local 1 // long[] arr2
end local 0 // long[] arr1
LocalVariableTable:
Start End Slot Name Signature
0 8 0 arr1 [J
0 8 1 arr2 [J
0 8 2 wordOffset I
0 8 3 numWords I
1 8 4 popCount J
2 7 6 i I
3 7 7 end I
MethodParameters:
Name Flags
arr1
arr2
wordOffset
numWords
public static long pop_andnot(long[], long[], int, int);
descriptor: ([J[JII)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=8, args_size=4
start local 0 // long[] arr1
start local 1 // long[] arr2
start local 2 // int wordOffset
start local 3 // int numWords
0: .line 72
lconst_0
lstore 4 /* popCount */
start local 4 // long popCount
1: .line 73
iload 2 /* wordOffset */
istore 6 /* i */
start local 6 // int i
2: iload 2 /* wordOffset */
iload 3 /* numWords */
iadd
istore 7 /* end */
start local 7 // int end
3: goto 6
4: .line 74
StackMap locals: long int int
StackMap stack:
lload 4 /* popCount */
aload 0 /* arr1 */
iload 6 /* i */
laload
aload 1 /* arr2 */
iload 6 /* i */
laload
ldc -1
lxor
land
invokestatic java.lang.Long.bitCount:(J)I
i2l
ladd
lstore 4 /* popCount */
5: .line 73
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 6 /* i */
iload 7 /* end */
if_icmplt 4
end local 7 // int end
end local 6 // int i
7: .line 76
lload 4 /* popCount */
lreturn
end local 4 // long popCount
end local 3 // int numWords
end local 2 // int wordOffset
end local 1 // long[] arr2
end local 0 // long[] arr1
LocalVariableTable:
Start End Slot Name Signature
0 8 0 arr1 [J
0 8 1 arr2 [J
0 8 2 wordOffset I
0 8 3 numWords I
1 8 4 popCount J
2 7 6 i I
3 7 7 end I
MethodParameters:
Name Flags
arr1
arr2
wordOffset
numWords
public static long pop_xor(long[], long[], int, int);
descriptor: ([J[JII)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=8, args_size=4
start local 0 // long[] arr1
start local 1 // long[] arr2
start local 2 // int wordOffset
start local 3 // int numWords
0: .line 82
lconst_0
lstore 4 /* popCount */
start local 4 // long popCount
1: .line 83
iload 2 /* wordOffset */
istore 6 /* i */
start local 6 // int i
2: iload 2 /* wordOffset */
iload 3 /* numWords */
iadd
istore 7 /* end */
start local 7 // int end
3: goto 6
4: .line 84
StackMap locals: long int int
StackMap stack:
lload 4 /* popCount */
aload 0 /* arr1 */
iload 6 /* i */
laload
aload 1 /* arr2 */
iload 6 /* i */
laload
lxor
invokestatic java.lang.Long.bitCount:(J)I
i2l
ladd
lstore 4 /* popCount */
5: .line 83
iinc 6 /* i */ 1
StackMap locals:
StackMap stack:
6: iload 6 /* i */
iload 7 /* end */
if_icmplt 4
end local 7 // int end
end local 6 // int i
7: .line 86
lload 4 /* popCount */
lreturn
end local 4 // long popCount
end local 3 // int numWords
end local 2 // int wordOffset
end local 1 // long[] arr2
end local 0 // long[] arr1
LocalVariableTable:
Start End Slot Name Signature
0 8 0 arr1 [J
0 8 1 arr2 [J
0 8 2 wordOffset I
0 8 3 numWords I
1 8 4 popCount J
2 7 6 i I
3 7 7 end I
MethodParameters:
Name Flags
arr1
arr2
wordOffset
numWords
public static int nextHighestPowerOfTwo(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 // int v
0: .line 91
iinc 0 /* v */ -1
1: .line 92
iload 0 /* v */
iload 0 /* v */
iconst_1
ishr
ior
istore 0 /* v */
2: .line 93
iload 0 /* v */
iload 0 /* v */
iconst_2
ishr
ior
istore 0 /* v */
3: .line 94
iload 0 /* v */
iload 0 /* v */
iconst_4
ishr
ior
istore 0 /* v */
4: .line 95
iload 0 /* v */
iload 0 /* v */
bipush 8
ishr
ior
istore 0 /* v */
5: .line 96
iload 0 /* v */
iload 0 /* v */
bipush 16
ishr
ior
istore 0 /* v */
6: .line 97
iinc 0 /* v */ 1
7: .line 98
iload 0 /* v */
ireturn
end local 0 // int v
LocalVariableTable:
Start End Slot Name Signature
0 8 0 v I
MethodParameters:
Name Flags
v
public static long nextHighestPowerOfTwo(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 // long v
0: .line 103
lload 0 /* v */
lconst_1
lsub
lstore 0 /* v */
1: .line 104
lload 0 /* v */
lload 0 /* v */
iconst_1
lshr
lor
lstore 0 /* v */
2: .line 105
lload 0 /* v */
lload 0 /* v */
iconst_2
lshr
lor
lstore 0 /* v */
3: .line 106
lload 0 /* v */
lload 0 /* v */
iconst_4
lshr
lor
lstore 0 /* v */
4: .line 107
lload 0 /* v */
lload 0 /* v */
bipush 8
lshr
lor
lstore 0 /* v */
5: .line 108
lload 0 /* v */
lload 0 /* v */
bipush 16
lshr
lor
lstore 0 /* v */
6: .line 109
lload 0 /* v */
lload 0 /* v */
bipush 32
lshr
lor
lstore 0 /* v */
7: .line 110
lload 0 /* v */
lconst_1
ladd
lstore 0 /* v */
8: .line 111
lload 0 /* v */
lreturn
end local 0 // long v
LocalVariableTable:
Start End Slot Name Signature
0 9 0 v J
MethodParameters:
Name Flags
v
public static long interleave(int, int);
descriptor: (II)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=2
start local 0 // int even
start local 1 // int odd
0: .line 120
ldc 4294967295
iload 0 /* even */
i2l
land
lstore 2 /* v1 */
start local 2 // long v1
1: .line 121
ldc 4294967295
iload 1 /* odd */
i2l
land
lstore 4 /* v2 */
start local 4 // long v2
2: .line 122
lload 2 /* v1 */
lload 2 /* v1 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_4
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_4
laload
land
lstore 2 /* v1 */
3: .line 123
lload 2 /* v1 */
lload 2 /* v1 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_3
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_3
laload
land
lstore 2 /* v1 */
4: .line 124
lload 2 /* v1 */
lload 2 /* v1 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_2
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_2
laload
land
lstore 2 /* v1 */
5: .line 125
lload 2 /* v1 */
lload 2 /* v1 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_1
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_1
laload
land
lstore 2 /* v1 */
6: .line 126
lload 2 /* v1 */
lload 2 /* v1 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_0
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_0
laload
land
lstore 2 /* v1 */
7: .line 127
lload 4 /* v2 */
lload 4 /* v2 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_4
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_4
laload
land
lstore 4 /* v2 */
8: .line 128
lload 4 /* v2 */
lload 4 /* v2 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_3
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_3
laload
land
lstore 4 /* v2 */
9: .line 129
lload 4 /* v2 */
lload 4 /* v2 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_2
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_2
laload
land
lstore 4 /* v2 */
10: .line 130
lload 4 /* v2 */
lload 4 /* v2 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_1
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_1
laload
land
lstore 4 /* v2 */
11: .line 131
lload 4 /* v2 */
lload 4 /* v2 */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_0
saload
lshl
lor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_0
laload
land
lstore 4 /* v2 */
12: .line 133
lload 4 /* v2 */
iconst_1
lshl
lload 2 /* v1 */
lor
lreturn
end local 4 // long v2
end local 2 // long v1
end local 1 // int odd
end local 0 // int even
LocalVariableTable:
Start End Slot Name Signature
0 13 0 even I
0 13 1 odd I
1 13 2 v1 J
2 13 4 v2 J
MethodParameters:
Name Flags
even
odd
public static long deinterleave(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 // long b
0: .line 140
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_0
laload
land
lstore 0 /* b */
1: .line 141
lload 0 /* b */
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_0
saload
lushr
lxor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_1
laload
land
lstore 0 /* b */
2: .line 142
lload 0 /* b */
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_1
saload
lushr
lxor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_2
laload
land
lstore 0 /* b */
3: .line 143
lload 0 /* b */
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_2
saload
lushr
lxor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_3
laload
land
lstore 0 /* b */
4: .line 144
lload 0 /* b */
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_3
saload
lushr
lxor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_4
laload
land
lstore 0 /* b */
5: .line 145
lload 0 /* b */
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.SHIFT:[S
iconst_4
saload
lushr
lxor
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_5
laload
land
lstore 0 /* b */
6: .line 146
lload 0 /* b */
lreturn
end local 0 // long b
LocalVariableTable:
Start End Slot Name Signature
0 7 0 b J
MethodParameters:
Name Flags
b
public static final long flipFlop(long);
descriptor: (J)J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=6, locals=2, args_size=1
start local 0 // long b
0: .line 153
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
bipush 6
laload
land
iconst_1
lushr
lload 0 /* b */
getstatic org.apache.lucene.util.BitUtil.MAGIC:[J
iconst_0
laload
land
iconst_1
lshl
lor
lreturn
end local 0 // long b
LocalVariableTable:
Start End Slot Name Signature
0 1 0 b J
MethodParameters:
Name Flags
b final
public static int zigZagEncode(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 // int i
0: .line 158
iload 0 /* i */
bipush 31
ishr
iload 0 /* i */
iconst_1
ishl
ixor
ireturn
end local 0 // int i
LocalVariableTable:
Start End Slot Name Signature
0 1 0 i I
MethodParameters:
Name Flags
i
public static long zigZagEncode(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 // long l
0: .line 168
lload 0 /* l */
bipush 63
lshr
lload 0 /* l */
iconst_1
lshl
lxor
lreturn
end local 0 // long l
LocalVariableTable:
Start End Slot Name Signature
0 1 0 l J
MethodParameters:
Name Flags
l
public static int zigZagDecode(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 // int i
0: .line 173
iload 0 /* i */
iconst_1
iushr
iload 0 /* i */
iconst_1
iand
ineg
ixor
ireturn
end local 0 // int i
LocalVariableTable:
Start End Slot Name Signature
0 1 0 i I
MethodParameters:
Name Flags
i
public static long zigZagDecode(long);
descriptor: (J)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 // long l
0: .line 178
lload 0 /* l */
iconst_1
lushr
lload 0 /* l */
lconst_1
land
lneg
lxor
lreturn
end local 0 // long l
LocalVariableTable:
Start End Slot Name Signature
0 1 0 l J
MethodParameters:
Name Flags
l
}
SourceFile: "BitUtil.java"