1
0
mirror of https://github.com/hashcat/hashcat.git synced 2024-11-29 03:18:30 +00:00

Workaround for either pocl or llvm fails and produces invalid optimized code

This commit is contained in:
jsteube 2016-01-06 11:48:18 +01:00
parent 36df3ef329
commit 6e680aa31c

View File

@ -150,8 +150,12 @@
#define SHA1_F0(x,y,z) ((z) ^ ((x) & ((y) ^ (z)))) #define SHA1_F0(x,y,z) ((z) ^ ((x) & ((y) ^ (z))))
#define SHA1_F1(x,y,z) ((x) ^ (y) ^ (z)) #define SHA1_F1(x,y,z) ((x) ^ (y) ^ (z))
#define SHA1_F2(x,y,z) (((x) & (y)) | ((z) & ((x) ^ (y)))) #define SHA1_F2(x,y,z) (((x) & (y)) | ((z) & ((x) ^ (y))))
#define SHA1_F0o(x,y,z) (SHA1_F0 ((x), (y), (z))) // either pocl or llvm fails and produces invalid optimized code
#define SHA1_F2o(x,y,z) (SHA1_F2 ((x), (y), (z))) //#define SHA1_F0o(x,y,z) (SHA1_F0 ((x), (y), (z)))
//#define SHA1_F2o(x,y,z) (SHA1_F2 ((x), (y), (z)))
// luckily we can use bitselect as a workaround
#define SHA1_F0o(x,y,z) (bitselect ((z), (y), (x)))
#define SHA1_F2o(x,y,z) (bitselect ((x), (y), ((x) ^ (z))))
#endif #endif
#define SHA1_STEP(f,a,b,c,d,e,x) \ #define SHA1_STEP(f,a,b,c,d,e,x) \