public class org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur extends java.lang.Object implements org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.MurmurConstants
{
private static final int X86_32_C1;
private static final int X86_32_C2;
private static long X64_128_C1;
private static long X64_128_C2;
public void <init>()
{
org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur v;
v := @this: org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static long hash_x86_32(byte[], int, long)
{
byte[] v;
byte v, v, v, v, v, v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
short v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: long;
v = v >> 2;
v = v;
v = 0;
label:
if v >= v goto label;
v = v << 2;
v = v[v];
v = v & 255;
v = v + 1;
v = v[v];
v = v & 255;
v = v << 8;
v = v | v;
v = v + 2;
v = v[v];
v = v & 255;
v = v << 16;
v = v | v;
v = v + 3;
v = v[v];
v = v & 255;
v = v << 24;
v = v | v;
v = v * -862048943L;
v = v & 4294967295L;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long rotl32(long,int)>(v, 15);
v = v * 461845907L;
v = v & 4294967295L;
v = v ^ v;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long rotl32(long,int)>(v, 13);
v = v * 5L;
v = v & 4294967295L;
v = v + 3864292196L;
v = v & 4294967295L;
v = v + 1;
goto label;
label:
v = v << 2;
v = 0L;
v = v & 3;
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
default: goto label;
};
label:
v = v + 2;
v = v[v];
v = v << 16;
v = v & 4294967295L;
v = 0L ^ v;
label:
v = v + 1;
v = v[v];
v = v << 8;
v = v & 4294967295L;
v = v ^ v;
label:
v = v[v];
v = v ^ v;
v = v * -862048943L;
v = v & 4294967295L;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long rotl32(long,int)>(v, 15);
v = v * 461845907L;
v = v & 4294967295L;
v = v ^ v;
label:
v = v ^ v;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long fmix32(long)>(v);
return v;
}
public static long[] hash_x64_128(byte[], int, long)
{
byte[] v;
byte v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.nio.ByteOrder v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.AssertionError v;
short v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.nio.ByteBuffer v;
long[] v;
int v, v, v, v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: long;
v = v;
v = v;
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[])>(v);
v = <java.nio.ByteOrder: java.nio.ByteOrder LITTLE_ENDIAN>;
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer order(java.nio.ByteOrder)>(v);
label:
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
if v < 16 goto label;
v = virtualinvoke v.<java.nio.ByteBuffer: long getLong()>();
v = virtualinvoke v.<java.nio.ByteBuffer: long getLong()>();
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long mixK1(long)>(v);
v = v ^ v;
v = staticinvoke <java.lang.Long: long rotateLeft(long,int)>(v, 27);
v = v + v;
v = v * 5L;
v = v + 1390208809L;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long mixK2(long)>(v);
v = v ^ v;
v = staticinvoke <java.lang.Long: long rotateLeft(long,int)>(v, 31);
v = v + v;
v = v * 5L;
v = v + 944331445L;
goto label;
label:
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer compact()>();
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer flip()>();
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
if v <= 0 goto label;
v = 0L;
v = 0L;
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
case 14: goto label;
case 15: goto label;
default: goto label;
};
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(14);
v = v & 255;
v = v << 48;
v = 0L ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(13);
v = v & 255;
v = v << 40;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(12);
v = v & 255;
v = v << 32;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(11);
v = v & 255;
v = v << 24;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(10);
v = v & 255;
v = v << 16;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(9);
v = v & 255;
v = v << 8;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(8);
v = v & 255;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: long getLong()>();
v = 0L ^ v;
goto label;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(6);
v = v & 255;
v = v << 48;
v = 0L ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(5);
v = v & 255;
v = v << 40;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(4);
v = v & 255;
v = v << 32;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(3);
v = v & 255;
v = v << 24;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(2);
v = v & 255;
v = v << 16;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(1);
v = v & 255;
v = v << 8;
v = v ^ v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: byte get(int)>(0);
v = v & 255;
v = v ^ v;
goto label;
label:
v = new java.lang.AssertionError;
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>("Code should not reach here!");
throw v;
label:
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long mixK1(long)>(v);
v = v ^ v;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long mixK2(long)>(v);
v = v ^ v;
label:
v = v ^ v;
v = v ^ v;
v = v + v;
v = v + v;
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long fmix64(long)>(v);
v = staticinvoke <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long fmix64(long)>(v);
v = v + v;
v = v + v;
v = newarray (long)[2];
v[0] = v;
v[1] = v;
return v;
}
private static long mixK1(long)
{
long v, v, v, v, v, v;
v := @parameter: long;
v = <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long X64_128_C1>;
v = v * v;
v = staticinvoke <java.lang.Long: long rotateLeft(long,int)>(v, 31);
v = <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long X64_128_C2>;
v = v * v;
return v;
}
private static long mixK2(long)
{
long v, v, v, v, v, v;
v := @parameter: long;
v = <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long X64_128_C2>;
v = v * v;
v = staticinvoke <java.lang.Long: long rotateLeft(long,int)>(v, 33);
v = <org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long X64_128_C1>;
v = v * v;
return v;
}
private static long rotl32(long, int)
{
long v, v, v, v, v, v;
int v, v;
v := @parameter: long;
v := @parameter: int;
v = v << v;
v = v & 4294967295L;
v = 32 - v;
v = v >>> v;
v = v & 4294967295L;
v = v | v;
return v;
}
private static long fmix32(long)
{
long v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: long;
v = v >> 16;
v = v & 4294967295L;
v = v ^ v;
v = v * 2246822507L;
v = v & 4294967295L;
v = v >> 13;
v = v & 4294967295L;
v = v ^ v;
v = v * -1028477387L;
v = v & 4294967295L;
v = v >> 16;
v = v & 4294967295L;
v = v ^ v;
return v;
}
private static long fmix64(long)
{
long v, v, v, v, v, v, v, v, v;
v := @parameter: long;
v = v >>> 33;
v = v ^ v;
v = v * -49064778989728563L;
v = v >>> 33;
v = v ^ v;
v = v * -4265267296055464877L;
v = v >>> 33;
v = v ^ v;
return v;
}
static void <clinit>()
{
<org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long X64_128_C1> = -8663945395140668459L;
<org.apache.hive.kudu.org.apache.kudu.shaded.com.sangupta.murmur.Murmur3: long X64_128_C2> = 5545529020109919103L;
return;
}
}