//incompatible to simd
//#define NEW_SIMD_CODE
-#include "include/constants.h"
-#include "include/kernel_vendor.h"
-
-#define DGST_R0 0
-#define DGST_R1 1
-#define DGST_R2 2
-#define DGST_R3 3
-
-#include "include/kernel_functions.c"
-#include "OpenCL/types_ocl.c"
-#include "OpenCL/common.c"
-#include "include/rp_kernel.h"
-#include "OpenCL/rp.c"
-#include "OpenCL/simd.c"
+#include "inc_vendor.cl"
+#include "inc_hash_constants.h"
+#include "inc_hash_functions.cl"
+#include "inc_types.cl"
+#include "inc_common.cl"
+#include "inc_rp.h"
+#include "inc_rp.cl"
+#include "inc_simd.cl"
#define SIPROUND(v0,v1,v2,v3) \
(v0) += (v1); \
if (gid >= gid_max) return;
u32 pw_buf0[4];
+ u32 pw_buf1[4];
pw_buf0[0] = pws[gid].i[ 0];
pw_buf0[1] = pws[gid].i[ 1];
pw_buf0[2] = pws[gid].i[ 2];
pw_buf0[3] = pws[gid].i[ 3];
-
- u32 pw_buf1[4];
-
pw_buf1[0] = pws[gid].i[ 4];
pw_buf1[1] = pws[gid].i[ 5];
pw_buf1[2] = pws[gid].i[ 6];
const u32 pw_len = pws[gid].pw_len;
/**
- * base
+ * salt
*/
u64x v0p = SIPHASHM_0;
const u32x out_len = apply_rules_vect (pw_buf0, pw_buf1, pw_len, rules_buf, il_pos, w0, w1);
+ /**
+ * siphash
+ */
+
switch (out_len / 8)
{
case 0: w0[1] |= out_len << 24; break;
const u32x a = l32_from_64 (v);
const u32x b = h32_from_64 (v);
- const u32x c = 0;
- const u32x d = 0;
- COMPARE_M_SIMD (a, b, c, d);
+ const u32x z = 0;
+
+ COMPARE_M_SIMD (a, b, z, z);
}
}
if (gid >= gid_max) return;
u32 pw_buf0[4];
+ u32 pw_buf1[4];
pw_buf0[0] = pws[gid].i[ 0];
pw_buf0[1] = pws[gid].i[ 1];
pw_buf0[2] = pws[gid].i[ 2];
pw_buf0[3] = pws[gid].i[ 3];
-
- u32 pw_buf1[4];
-
pw_buf1[0] = pws[gid].i[ 4];
pw_buf1[1] = pws[gid].i[ 5];
pw_buf1[2] = pws[gid].i[ 6];
const u32 pw_len = pws[gid].pw_len;
/**
- * base
+ * salt
*/
u64x v0p = SIPHASHM_0;
{
digests_buf[digests_offset].digest_buf[DGST_R0],
digests_buf[digests_offset].digest_buf[DGST_R1],
- digests_buf[digests_offset].digest_buf[DGST_R2],
- digests_buf[digests_offset].digest_buf[DGST_R3]
+ 0,
+ 0
};
/**
const u32x out_len = apply_rules_vect (pw_buf0, pw_buf1, pw_len, rules_buf, il_pos, w0, w1);
+ /**
+ * siphash
+ */
+
switch (out_len / 8)
{
case 0: w0[1] |= out_len << 24; break;
const u32x a = l32_from_64 (v);
const u32x b = h32_from_64 (v);
- const u32x c = 0;
- const u32x d = 0;
- COMPARE_S_SIMD (a, b, c, d);
+ const u32x z = 0;
+
+ COMPARE_S_SIMD (a, b, z, z);
}
}