From 0bf0414dc52c5366efaf1a9dd37707ec360a1a8d Mon Sep 17 00:00:00 2001 From: Jens Steube Date: Mon, 6 Dec 2021 17:05:23 +0100 Subject: [PATCH] Prepare -m 17010 kernel to work on HIP, this is not a full fix --- OpenCL/m17010-pure.cl | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/OpenCL/m17010-pure.cl b/OpenCL/m17010-pure.cl index 6a15f702e..da1269402 100644 --- a/OpenCL/m17010-pure.cl +++ b/OpenCL/m17010-pure.cl @@ -47,8 +47,17 @@ DECLSPEC u32 hc_bytealign_le_S (const u32 a, const u32 b, const int c) { const int c_mod_4 = c & 3; + #if ((defined IS_AMD || defined IS_HIP) && HAS_VPERM == 1) || defined IS_NV + #if defined IS_NV - const u32 r = hc_byte_perm_S (b, a, (0x76543210 >> (c_mod_4 * 4)) & 0xffff); + const int selector = (0x76543210 >> (c_mod_4 * 4)) & 0xffff; + #endif + + #if (defined IS_AMD || defined IS_HIP) + const int selector = l32_from_64_S (0x0706050403020100UL >> (c_mod_4 * 8)); + #endif + + const u32 r = hc_byte_perm (b, a, selector); #endif return r;