public class org.jruby.util.SipHashInline
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.util.SipHashInline
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.jruby.util.SipHashInline this
0: .line 17
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.jruby.util.SipHashInline this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/util/SipHashInline;
public static long hash24(long, long, byte[]);
descriptor: (JJ[B)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=5, args_size=3
start local 0 // long k0
start local 2 // long k1
start local 4 // byte[] data
0: .line 20
lload 0 /* k0 */
lload 2 /* k1 */
aload 4 /* data */
iconst_0
aload 4 /* data */
arraylength
invokestatic org.jruby.util.SipHashInline.hash24:(JJ[BII)J
lreturn
end local 4 // byte[] data
end local 2 // long k1
end local 0 // long k0
LocalVariableTable:
Start End Slot Name Signature
0 1 0 k0 J
0 1 2 k1 J
0 1 4 data [B
MethodParameters:
Name Flags
k0
k1
data
public static long hash24(long, long, byte[], int, int);
descriptor: (JJ[BII)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=20, args_size=5
start local 0 // long k0
start local 2 // long k1
start local 4 // byte[] src
start local 5 // int offset
start local 6 // int length
0: .line 24
ldc 8317987319222330741
lload 0 /* k0 */
lxor
lstore 7 /* v0 */
start local 7 // long v0
1: .line 25
ldc 7237128888997146477
lload 2 /* k1 */
lxor
lstore 9 /* v1 */
start local 9 // long v1
2: .line 26
ldc 7816392313619706465
lload 0 /* k0 */
lxor
lstore 11 /* v2 */
start local 11 // long v2
3: .line 27
ldc 8387220255154660723
lload 2 /* k1 */
lxor
lstore 13 /* v3 */
start local 13 // long v3
4: .line 29
iload 5 /* offset */
iload 6 /* length */
bipush 8
idiv
bipush 8
imul
iadd
istore 17 /* last */
start local 17 // int last
5: .line 30
iload 5 /* offset */
istore 18 /* i */
start local 18 // int i
6: .line 32
iload 5 /* offset */
ifge 8
7: .line 33
new java.lang.ArrayIndexOutOfBoundsException
dup
iload 5 /* offset */
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
athrow
8: .line 34
StackMap locals: long long byte[] int int long long long long top top int int
StackMap stack:
iload 5 /* offset */
iload 6 /* length */
iadd
aload 4 /* src */
arraylength
if_icmple 28
9: .line 35
new java.lang.ArrayIndexOutOfBoundsException
dup
aload 4 /* src */
arraylength
invokespecial java.lang.ArrayIndexOutOfBoundsException.<init>:(I)V
athrow
10: .line 40
StackMap locals:
StackMap stack:
getstatic org.jruby.util.SipHashInline$LongReader.INSTANCE:Lorg/jruby/util/SipHashInline$LongReader;
aload 4 /* src */
iload 18 /* i */
invokevirtual org.jruby.util.SipHashInline$LongReader.getLong:([BI)J
lstore 15 /* m */
start local 15 // long m
11: .line 41
iinc 18 /* i */ 8
12: .line 43
lload 13 /* v3 */
lload 15 /* m */
lxor
lstore 13 /* v3 */
13: .line 89
lload 7 /* v0 */
lload 9 /* v1 */
ladd
lstore 7 /* v0 */
lload 11 /* v2 */
lload 13 /* v3 */
ladd
lstore 11 /* v2 */
14: .line 90
lload 9 /* v1 */
bipush 13
lshl
lload 9 /* v1 */
bipush 51
lushr
lor
lstore 9 /* v1 */
lload 13 /* v3 */
bipush 16
lshl
lload 13 /* v3 */
bipush 48
lushr
lor
lstore 13 /* v3 */
15: .line 91
lload 9 /* v1 */
lload 7 /* v0 */
lxor
lstore 9 /* v1 */
lload 13 /* v3 */
lload 11 /* v2 */
lxor
lstore 13 /* v3 */
16: .line 92
lload 7 /* v0 */
bipush 32
lshl
lload 7 /* v0 */
bipush 32
lushr
lor
lstore 7 /* v0 */
lload 11 /* v2 */
lload 9 /* v1 */
ladd
lstore 11 /* v2 */
17: .line 93
lload 7 /* v0 */
lload 13 /* v3 */
ladd
lstore 7 /* v0 */
lload 9 /* v1 */
bipush 17
lshl
lload 9 /* v1 */
bipush 47
lushr
lor
lstore 9 /* v1 */
18: .line 94
lload 13 /* v3 */
bipush 21
lshl
lload 13 /* v3 */
bipush 43
lushr
lor
lstore 13 /* v3 */
lload 9 /* v1 */
lload 11 /* v2 */
lxor
lstore 9 /* v1 */
19: .line 95
lload 13 /* v3 */
lload 7 /* v0 */
lxor
lstore 13 /* v3 */
lload 11 /* v2 */
bipush 32
lshl
lload 11 /* v2 */
bipush 32
lushr
lor
lstore 11 /* v2 */
20: .line 98
lload 7 /* v0 */
lload 9 /* v1 */
ladd
lstore 7 /* v0 */
lload 11 /* v2 */
lload 13 /* v3 */
ladd
lstore 11 /* v2 */
21: .line 99
lload 9 /* v1 */
bipush 13
lshl
lload 9 /* v1 */
bipush 51
lushr
lor
lstore 9 /* v1 */
lload 13 /* v3 */
bipush 16
lshl
lload 13 /* v3 */
bipush 48
lushr
lor
lstore 13 /* v3 */
22: .line 100
lload 9 /* v1 */
lload 7 /* v0 */
lxor
lstore 9 /* v1 */
lload 13 /* v3 */
lload 11 /* v2 */
lxor
lstore 13 /* v3 */
23: .line 101
lload 7 /* v0 */
bipush 32
lshl
lload 7 /* v0 */
bipush 32
lushr
lor
lstore 7 /* v0 */
lload 11 /* v2 */
lload 9 /* v1 */
ladd
lstore 11 /* v2 */
24: .line 102
lload 7 /* v0 */
lload 13 /* v3 */
ladd
lstore 7 /* v0 */
lload 9 /* v1 */
bipush 17
lshl
lload 9 /* v1 */
bipush 47
lushr
lor
lstore 9 /* v1 */
25: .line 103
lload 13 /* v3 */
bipush 21
lshl
lload 13 /* v3 */
bipush 43
lushr
lor
lstore 13 /* v3 */
lload 9 /* v1 */
lload 11 /* v2 */
lxor
lstore 9 /* v1 */
26: .line 104
lload 13 /* v3 */
lload 7 /* v0 */
lxor
lstore 13 /* v3 */
lload 11 /* v2 */
bipush 32
lshl
lload 11 /* v2 */
bipush 32
lushr
lor
lstore 11 /* v2 */
27: .line 106
lload 7 /* v0 */
lload 15 /* m */
lxor
lstore 7 /* v0 */
end local 15 // long m
28: .line 39
StackMap locals:
StackMap stack:
iload 18 /* i */
iload 17 /* last */
if_icmplt 10
29: .line 111
lconst_0
lstore 15 /* m */
start local 15 // long m
30: .line 112
iload 5 /* offset */
iload 6 /* length */
iadd
iconst_1
isub
istore 18 /* i */
goto 33
31: .line 113
StackMap locals: long long byte[] int int long long long long long int int
StackMap stack:
lload 15 /* m */
bipush 8
lshl
lstore 15 /* m */
lload 15 /* m */
aload 4 /* src */
iload 18 /* i */
baload
i2l
lor
lstore 15 /* m */
32: .line 112
iinc 18 /* i */ -1
StackMap locals:
StackMap stack:
33: iload 18 /* i */
iload 17 /* last */
if_icmpge 31
34: .line 115
lload 15 /* m */
iload 6 /* length */
i2l
bipush 56
lshl
lor
lstore 15 /* m */
35: .line 117
lload 13 /* v3 */
lload 15 /* m */
lxor
lstore 13 /* v3 */
36: .line 118
iconst_0
istore 19 /* j */
start local 19 // int j
37: goto 46
38: .line 120
StackMap locals: int
StackMap stack:
lload 7 /* v0 */
lload 9 /* v1 */
ladd
lstore 7 /* v0 */
lload 11 /* v2 */
lload 13 /* v3 */
ladd
lstore 11 /* v2 */
39: .line 121
lload 9 /* v1 */
bipush 13
lshl
lload 9 /* v1 */
bipush 51
lushr
lor
lstore 9 /* v1 */
lload 13 /* v3 */
bipush 16
lshl
lload 13 /* v3 */
bipush 48
lushr
lor
lstore 13 /* v3 */
40: .line 122
lload 9 /* v1 */
lload 7 /* v0 */
lxor
lstore 9 /* v1 */
lload 13 /* v3 */
lload 11 /* v2 */
lxor
lstore 13 /* v3 */
41: .line 123
lload 7 /* v0 */
bipush 32
lshl
lload 7 /* v0 */
bipush 32
lushr
lor
lstore 7 /* v0 */
lload 11 /* v2 */
lload 9 /* v1 */
ladd
lstore 11 /* v2 */
42: .line 124
lload 7 /* v0 */
lload 13 /* v3 */
ladd
lstore 7 /* v0 */
lload 9 /* v1 */
bipush 17
lshl
lload 9 /* v1 */
bipush 47
lushr
lor
lstore 9 /* v1 */
43: .line 125
lload 13 /* v3 */
bipush 21
lshl
lload 13 /* v3 */
bipush 43
lushr
lor
lstore 13 /* v3 */
lload 9 /* v1 */
lload 11 /* v2 */
lxor
lstore 9 /* v1 */
44: .line 126
lload 13 /* v3 */
lload 7 /* v0 */
lxor
lstore 13 /* v3 */
lload 11 /* v2 */
bipush 32
lshl
lload 11 /* v2 */
bipush 32
lushr
lor
lstore 11 /* v2 */
45: .line 118
iinc 19 /* j */ 1
StackMap locals:
StackMap stack:
46: iload 19 /* j */
iconst_2
if_icmplt 38
end local 19 // int j
47: .line 129
lload 7 /* v0 */
lload 15 /* m */
lxor
lstore 7 /* v0 */
48: .line 133
lload 11 /* v2 */
ldc 255
lxor
lstore 11 /* v2 */
49: .line 134
iconst_0
istore 19 /* j */
start local 19 // int j
50: goto 59
51: .line 136
StackMap locals:
StackMap stack:
lload 7 /* v0 */
lload 9 /* v1 */
ladd
lstore 7 /* v0 */
lload 11 /* v2 */
lload 13 /* v3 */
ladd
lstore 11 /* v2 */
52: .line 137
lload 9 /* v1 */
bipush 13
lshl
lload 9 /* v1 */
bipush 51
lushr
lor
lstore 9 /* v1 */
lload 13 /* v3 */
bipush 16
lshl
lload 13 /* v3 */
bipush 48
lushr
lor
lstore 13 /* v3 */
53: .line 138
lload 9 /* v1 */
lload 7 /* v0 */
lxor
lstore 9 /* v1 */
lload 13 /* v3 */
lload 11 /* v2 */
lxor
lstore 13 /* v3 */
54: .line 139
lload 7 /* v0 */
bipush 32
lshl
lload 7 /* v0 */
bipush 32
lushr
lor
lstore 7 /* v0 */
lload 11 /* v2 */
lload 9 /* v1 */
ladd
lstore 11 /* v2 */
55: .line 140
lload 7 /* v0 */
lload 13 /* v3 */
ladd
lstore 7 /* v0 */
lload 9 /* v1 */
bipush 17
lshl
lload 9 /* v1 */
bipush 47
lushr
lor
lstore 9 /* v1 */
56: .line 141
lload 13 /* v3 */
bipush 21
lshl
lload 13 /* v3 */
bipush 43
lushr
lor
lstore 13 /* v3 */
lload 9 /* v1 */
lload 11 /* v2 */
lxor
lstore 9 /* v1 */
57: .line 142
lload 13 /* v3 */
lload 7 /* v0 */
lxor
lstore 13 /* v3 */
lload 11 /* v2 */
bipush 32
lshl
lload 11 /* v2 */
bipush 32
lushr
lor
lstore 11 /* v2 */
58: .line 134
iinc 19 /* j */ 1
StackMap locals:
StackMap stack:
59: iload 19 /* j */
iconst_4
if_icmplt 51
end local 19 // int j
60: .line 145
lload 7 /* v0 */
lload 9 /* v1 */
lxor
lload 11 /* v2 */
lxor
lload 13 /* v3 */
lxor
lreturn
end local 18 // int i
end local 17 // int last
end local 15 // long m
end local 13 // long v3
end local 11 // long v2
end local 9 // long v1
end local 7 // long v0
end local 6 // int length
end local 5 // int offset
end local 4 // byte[] src
end local 2 // long k1
end local 0 // long k0
LocalVariableTable:
Start End Slot Name Signature
0 61 0 k0 J
0 61 2 k1 J
0 61 4 src [B
0 61 5 offset I
0 61 6 length I
1 61 7 v0 J
2 61 9 v1 J
3 61 11 v2 J
4 61 13 v3 J
11 28 15 m J
30 61 15 m J
5 61 17 last I
6 61 18 i I
37 47 19 j I
50 60 19 j I
MethodParameters:
Name Flags
k0
k1
src
offset
length
}
SourceFile: "SipHashInline.java"
NestMembers:
org.jruby.util.SipHashInline$LongReader org.jruby.util.SipHashInline$LongReader$FallbackLongReader org.jruby.util.SipHashInline$LongReader$UnsafeLongReader
InnerClasses:
private abstract LongReader = org.jruby.util.SipHashInline$LongReader of org.jruby.util.SipHashInline