1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-26 01:50:10 +00:00

Merge pull request #3716 from matrix/fix_31300_vector

Fixed build failed for 31300 with vector width > 1
This commit is contained in:
Jens Steube 2023-05-15 14:56:19 +02:00 committed by GitHub
commit df97165ca8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 49 additions and 49 deletions

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -62,6 +62,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 build failed for 31000/Blake2s 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