From 5b4ab2cc0b1ca22d9093c609c55e6a3a963acd47 Mon Sep 17 00:00:00 2001 From: Gabriele Gristina Date: Fri, 5 May 2023 19:45:33 +0200 Subject: [PATCH] Fixed build failed for 31300 with vector width > 1 --- OpenCL/m31300_a0-optimized.cl | 32 ++++++++++++++++---------------- OpenCL/m31300_a1-optimized.cl | 33 ++++++++++++++++----------------- OpenCL/m31300_a3-optimized.cl | 32 ++++++++++++++++---------------- docs/changes.txt | 1 + 4 files changed, 49 insertions(+), 49 deletions(-) diff --git a/OpenCL/m31300_a0-optimized.cl b/OpenCL/m31300_a0-optimized.cl index 453eba46b..11b3061c5 100644 --- a/OpenCL/m31300_a0-optimized.cl +++ b/OpenCL/m31300_a0-optimized.cl @@ -145,10 +145,10 @@ KERNEL_FQ void m31300_m04 (KERN_ATTR_RULES ()) MD4_STEP (MD4_H , c, d, a, b, w1[3], MD4C02, MD4S22); MD4_STEP (MD4_H , b, c, d, a, w3[3], MD4C02, MD4S23); - w0[0] = a + MD4M_A; - w0[1] = b + MD4M_B; - w0[2] = c + MD4M_C; - w0[3] = d + MD4M_D; + w0[0] = a + make_u32x (MD4M_A); + w0[1] = b + make_u32x (MD4M_B); + w0[2] = c + make_u32x (MD4M_C); + w0[3] = d + make_u32x (MD4M_D); w1[0] = salt_buf[ 0]; w1[1] = salt_buf[ 1]; w1[2] = salt_buf[ 2]; @@ -237,10 +237,10 @@ KERNEL_FQ void m31300_m04 (KERN_ATTR_RULES ()) MD5_STEP (MD5_I , c, d, a, b, w0[2], MD5C3e, MD5S32); MD5_STEP (MD5_I , b, c, d, a, w2[1], MD5C3f, MD5S33); - a = a + MD5M_A; - b = b + MD5M_B; - c = c + MD5M_C; - d = d + MD5M_D; + a = a + make_u32x (MD5M_A); + b = b + make_u32x (MD5M_B); + c = c + make_u32x (MD5M_C); + d = d + make_u32x (MD5M_D); const u32x a1 = a; const u32x b1 = b; @@ -491,10 +491,10 @@ KERNEL_FQ void m31300_s04 (KERN_ATTR_RULES ()) MD4_STEP (MD4_H , c, d, a, b, w1[3], MD4C02, MD4S22); MD4_STEP (MD4_H , b, c, d, a, w3[3], MD4C02, MD4S23); - w0[0] = a + MD4M_A; - w0[1] = b + MD4M_B; - w0[2] = c + MD4M_C; - w0[3] = d + MD4M_D; + w0[0] = a + make_u32x (MD4M_A); + w0[1] = b + make_u32x (MD4M_B); + w0[2] = c + make_u32x (MD4M_C); + w0[3] = d + make_u32x (MD4M_D); w1[0] = salt_buf[ 0]; w1[1] = salt_buf[ 1]; w1[2] = salt_buf[ 2]; @@ -583,10 +583,10 @@ KERNEL_FQ void m31300_s04 (KERN_ATTR_RULES ()) MD5_STEP (MD5_I , c, d, a, b, w0[2], MD5C3e, MD5S32); MD5_STEP (MD5_I , b, c, d, a, w2[1], MD5C3f, MD5S33); - a = a + MD5M_A; - b = b + MD5M_B; - c = c + MD5M_C; - d = d + MD5M_D; + a = a + make_u32x (MD5M_A); + b = b + make_u32x (MD5M_B); + c = c + make_u32x (MD5M_C); + d = d + make_u32x (MD5M_D); const u32x a1 = a; const u32x b1 = b; diff --git a/OpenCL/m31300_a1-optimized.cl b/OpenCL/m31300_a1-optimized.cl index ec6ba05d3..604554925 100644 --- a/OpenCL/m31300_a1-optimized.cl +++ b/OpenCL/m31300_a1-optimized.cl @@ -205,11 +205,10 @@ KERNEL_FQ void m31300_m04 (KERN_ATTR_BASIC ()) MD4_STEP (MD4_H , c, d, a, b, w1[3], MD4C02, MD4S22); MD4_STEP (MD4_H , b, c, d, a, w3[3], MD4C02, MD4S23); - - w0[0] = a + MD4M_A; - w0[1] = b + MD4M_B; - w0[2] = c + MD4M_C; - w0[3] = d + MD4M_D; + w0[0] = a + make_u32x (MD4M_A); + w0[1] = b + make_u32x (MD4M_B); + w0[2] = c + make_u32x (MD4M_C); + w0[3] = d + make_u32x (MD4M_D); w1[0] = salt_buf[ 0]; w1[1] = salt_buf[ 1]; w1[2] = salt_buf[ 2]; @@ -298,10 +297,10 @@ KERNEL_FQ void m31300_m04 (KERN_ATTR_BASIC ()) MD5_STEP (MD5_I , c, d, a, b, w0[2], MD5C3e, MD5S32); MD5_STEP (MD5_I , b, c, d, a, w2[1], MD5C3f, MD5S33); - a = a + MD5M_A; - b = b + MD5M_B; - c = c + MD5M_C; - d = d + MD5M_D; + a = a + make_u32x (MD5M_A); + b = b + make_u32x (MD5M_B); + c = c + make_u32x (MD5M_C); + d = d + make_u32x (MD5M_D); const u32x a1 = a; const u32x b1 = b; @@ -615,10 +614,10 @@ KERNEL_FQ void m31300_s04 (KERN_ATTR_BASIC ()) MD4_STEP (MD4_H , b, c, d, a, w3[3], MD4C02, MD4S23); - w0[0] = a + MD4M_A; - w0[1] = b + MD4M_B; - w0[2] = c + MD4M_C; - w0[3] = d + MD4M_D; + w0[0] = a + make_u32x (MD4M_A); + w0[1] = b + make_u32x (MD4M_B); + w0[2] = c + make_u32x (MD4M_C); + w0[3] = d + make_u32x (MD4M_D); w1[0] = salt_buf[ 0]; w1[1] = salt_buf[ 1]; w1[2] = salt_buf[ 2]; @@ -707,10 +706,10 @@ KERNEL_FQ void m31300_s04 (KERN_ATTR_BASIC ()) MD5_STEP (MD5_I , c, d, a, b, w0[2], MD5C3e, MD5S32); MD5_STEP (MD5_I , b, c, d, a, w2[1], MD5C3f, MD5S33); - a = a + MD5M_A; - b = b + MD5M_B; - c = c + MD5M_C; - d = d + MD5M_D; + a = a + make_u32x (MD5M_A); + b = b + make_u32x (MD5M_B); + c = c + make_u32x (MD5M_C); + d = d + make_u32x (MD5M_D); const u32x a1 = a; const u32x b1 = b; diff --git a/OpenCL/m31300_a3-optimized.cl b/OpenCL/m31300_a3-optimized.cl index 6b2153211..e305df2c5 100644 --- a/OpenCL/m31300_a3-optimized.cl +++ b/OpenCL/m31300_a3-optimized.cl @@ -166,10 +166,10 @@ DECLSPEC void m31300m (PRIVATE_AS u32 *w, const u32 pw_len, KERN_ATTR_FUNC_VECTO u32x w2[4]; u32x w3[4]; - w0[0] = a + MD4M_A; - w0[1] = b + MD4M_B; - w0[2] = c + MD4M_C; - w0[3] = d + MD4M_D; + w0[0] = a + make_u32x (MD4M_A); + w0[1] = b + make_u32x (MD4M_B); + w0[2] = c + make_u32x (MD4M_C); + w0[3] = d + make_u32x (MD4M_D); w1[0] = salt_buf[ 0]; w1[1] = salt_buf[ 1]; w1[2] = salt_buf[ 2]; @@ -258,10 +258,10 @@ DECLSPEC void m31300m (PRIVATE_AS u32 *w, const u32 pw_len, KERN_ATTR_FUNC_VECTO MD5_STEP (MD5_I , c, d, a, b, w0[2], MD5C3e, MD5S32); MD5_STEP (MD5_I , b, c, d, a, w2[1], MD5C3f, MD5S33); - a = a + MD5M_A; - b = b + MD5M_B; - c = c + MD5M_C; - d = d + MD5M_D; + a = a + make_u32x (MD5M_A); + b = b + make_u32x (MD5M_B); + c = c + make_u32x (MD5M_C); + d = d + make_u32x (MD5M_D); const u32x a1 = a; const u32x b1 = b; @@ -527,10 +527,10 @@ DECLSPEC void m31300s (PRIVATE_AS u32 *w, const u32 pw_len, KERN_ATTR_FUNC_VECTO u32x w2[4]; u32x w3[4]; - w0[0] = a + MD4M_A; - w0[1] = b + MD4M_B; - w0[2] = c + MD4M_C; - w0[3] = d + MD4M_D; + w0[0] = a + make_u32x (MD4M_A); + w0[1] = b + make_u32x (MD4M_B); + w0[2] = c + make_u32x (MD4M_C); + w0[3] = d + make_u32x (MD4M_D); w1[0] = salt_buf[ 0]; w1[1] = salt_buf[ 1]; w1[2] = salt_buf[ 2]; @@ -619,10 +619,10 @@ DECLSPEC void m31300s (PRIVATE_AS u32 *w, const u32 pw_len, KERN_ATTR_FUNC_VECTO MD5_STEP (MD5_I , c, d, a, b, w0[2], MD5C3e, MD5S32); MD5_STEP (MD5_I , b, c, d, a, w2[1], MD5C3f, MD5S33); - a = a + MD5M_A; - b = b + MD5M_B; - c = c + MD5M_C; - d = d + MD5M_D; + a = a + make_u32x (MD5M_A); + b = b + make_u32x (MD5M_B); + c = c + make_u32x (MD5M_C); + d = d + make_u32x (MD5M_D); const u32x a1 = a; const u32x b1 = b; diff --git a/docs/changes.txt b/docs/changes.txt index 3965c968d..9d80179b7 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -59,6 +59,7 @@ - Fixed build failed for 18400 with Apple Metal - Fixed build failed for 18600 with Apple Metal - Fixed build failed for 31700 with Apple Metal +- Fixed build failed for 31300 with vector width > 1 - Fixed display problem of the "Optimizers applied" list for algorithms using OPTI_TYPE_SLOW_HASH_SIMD_INIT2 and/or OPTI_TYPE_SLOW_HASH_SIMD_LOOP2 - Fixed incompatible pointer types (salt1 and salt2 buf) in 31700 a3 kernel - Fixed incompatible pointer types (salt1 and salt2 buf) in 3730 a3 kernel