Implementation notes: amd64, hydra7, crypto_hash/lsh256

Computer: hydra7
Microarchitecture: amd64; Sandy Bridge+AES (206a7)
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_hash
Primitive: lsh256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
541111561 0 017795 844 896ssse3clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
543311587 0 019763 844 896ssse3clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
544010103 0 015205 836 896ssse3clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
544511638 0 016171 844 896ssse3clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
606312769 0 018125 804 960ssse3gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
613212677 0 019341 804 960ssse3gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
637811784 0 017252 796 960ssse3gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
659111253 0 015936 780 928ssse3gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
928216783 0 020195 844 896sse2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
929916841 0 022179 844 896sse2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
932316828 0 018555 844 896sse2clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
933714691 0 017349 836 896sse2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
1121919009 0 021245 804 960sse2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
1123018885 0 022445 804 960sse2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
1180717420 0 020068 796 960sse2gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
1273117059 0 018832 780 928sse2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
1467021483 0 023315 844 896sse2clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
177252372 336 01755512 144924 10240cryptoppclang++_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
177332334 336 01757184 144924 10240cryptoppclang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
178113016 336 01757556 144892 10336cryptoppg++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
178522877 336 01757450 144892 10336cryptoppg++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
179592334 336 01759128 144924 10240cryptoppclang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
187552362 336 01755988 144900 10304cryptoppg++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
189252596 336 01755565 144916 10240cryptoppclang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2056423991 0 024339 844 896refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2070223793 0 022181 836 896refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2090523991 0 026283 844 896refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2271023191 0 024539 844 896refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2704626298 0 024516 796 960refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2829731013 0 028517 804 960refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2889030497 0 026981 804 960refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
2933723079 0 021840 780 928refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
4924136282 0 028795 844 896refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
1356822797 336 01758998 144884 10336cryptoppg++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716

Compiler output


lsh-impl.c: lsh-impl.c:190:10: error: always_inline function '_mm256_add_epi32' requires target feature 'avx2', but would be inlined into function 'add_blk' that is compiled without support for 'avx2'
lsh-impl.c:         *cv_l = ADD(*cv_l, *cv_r);
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:152:18: note: expanded from macro 'ADD'
lsh-impl.c: #define ADD(x,y) _mm256_add_epi32(x,y)
lsh-impl.c:                  ^
lsh-impl.c: lsh-impl.c:194:11: error: always_inline function '_mm256_slli_epi32' requires target feature 'avx2', but would be inlined into function 'rotate_blk_even_alpha' that is compiled without support for 'avx2'
lsh-impl.c:         *cv = OR(SHIFT_L(*cv, ROT_EVEN_ALPHA), SHIFT_R(*cv, WORD_BIT_LEN - ROT_EVEN_ALPHA));
lsh-impl.c:                  ^
lsh-impl.c: lsh-impl.c:153:22: note: expanded from macro 'SHIFT_L'
lsh-impl.c: #define SHIFT_L(x,r) _mm256_slli_epi32(x,r)
lsh-impl.c:                      ^
lsh-impl.c: lsh-impl.c:194:41: error: always_inline function '_mm256_srli_epi32' requires target feature 'avx2', but would be inlined into function 'rotate_blk_even_alpha' that is compiled without support for 'avx2'
lsh-impl.c:         *cv = OR(SHIFT_L(*cv, ROT_EVEN_ALPHA), SHIFT_R(*cv, WORD_BIT_LEN - ROT_EVEN_ALPHA));
lsh-impl.c:                                                ^
lsh-impl.c: lsh-impl.c:154:22: note: expanded from macro 'SHIFT_R'
lsh-impl.c: #define SHIFT_R(x,r) _mm256_srli_epi32(x,r)
lsh-impl.c:                      ^
lsh-impl.c: lsh-impl.c:194:8: error: always_inline function '_mm256_or_si256' requires target feature 'avx2', but would be inlined into function 'rotate_blk_even_alpha' that is compiled without support for 'avx2'
lsh-impl.c:         *cv = OR(SHIFT_L(*cv, ROT_EVEN_ALPHA), SHIFT_R(*cv, WORD_BIT_LEN - ROT_EVEN_ALPHA));
lsh-impl.c:               ^
lsh-impl.c: lsh-impl.c:148:17: note: expanded from macro 'OR'
lsh-impl.c: #define OR(x,y) _mm256_or_si256(x,y)
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:210:10: error: always_inline function '_mm256_xor_si256' requires target feature 'avx2', but would be inlined into function 'xor_with_const' that is compiled without support for 'avx2'
lsh-impl.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


lsh-impl.c: lsh-impl.c:367:10: error: always_inline function '_mm256_set_epi32' requires target feature 'avx', but would be inlined into function 'lsh256_init' that is compiled without support for 'avx'
lsh-impl.c:         *cv_l = _mm256_set_epi32(0, 0, 0, 0, 0, 0, LSH_GET_HASHBIT(algtype), LSH256_HASH_VAL_MAX_BYTE_LEN);
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:367:10: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
lsh-impl.c: lsh-impl.c:368:10: error: always_inline function '_mm256_setzero_si256' requires target feature 'avx', but would be inlined into function 'lsh256_init' that is compiled without support for 'avx'
lsh-impl.c:         *cv_r = _mm256_setzero_si256();
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:368:10: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
lsh-impl.c: lsh-impl.c:369:19: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'lsh256_init' that is compiled without support for 'avx'
lsh-impl.c:         byte_perm_step = LOAD(g_BytePermInfo);
lsh-impl.c:                          ^
lsh-impl.c: lsh-impl.c:145:17: note: expanded from macro 'LOAD'
lsh-impl.c: #define LOAD(x) _mm256_loadu_si256((__m256i*)x)
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:369:19: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
lsh-impl.c: lsh-impl.c:145:17: note: expanded from macro 'LOAD'
lsh-impl.c: #define LOAD(x) _mm256_loadu_si256((__m256i*)x)
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:375:3: warning: AVX vector argument of type 'const __m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
lsh-impl.c:                 mix_even(cv_l, cv_r, const_v, byte_perm_step);
lsh-impl.c:                 ^
lsh-impl.c: lsh-impl.c:379:3: warning: AVX vector argument of type 'const __m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
lsh-impl.c:                 mix_odd(cv_l, cv_r, const_v, byte_perm_step);
lsh-impl.c:                 ^
lsh-impl.c: 2 warnings and 6 errors generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


lsh-impl.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
lsh-impl.c:                  from lsh-impl.c:35:
lsh-impl.c: lsh-impl.c: In function 'msg_exp_even':
lsh-impl.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:119:1: error: inlining failed in call to 'always_inline' '_mm256_add_epi32': target specific option mismatch
lsh-impl.c:   119 | _mm256_add_epi32 (__m256i __A, __m256i __B)
lsh-impl.c:       | ^~~~~~~~~~~~~~~~
lsh-impl.c: lsh-impl.c:152:18: note: called from here
lsh-impl.c:   152 | #define ADD(x,y) _mm256_add_epi32(x,y)
lsh-impl.c:       |                  ^~~~~~~~~~~~~~~~~~~~~
lsh-impl.c: lsh-impl.c:172:34: note: in expansion of macro 'ADD'
lsh-impl.c:   172 |         i_state->submsg_e_r[0] = ADD(i_state->submsg_o_r[0], SHUFFLE8(i_state->submsg_e_r[0], perm_step));
lsh-impl.c:       |                                  ^~~
lsh-impl.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
lsh-impl.c:                  from lsh-impl.c:35:
lsh-impl.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/avx2intrin.h:588:1: error: inlining failed in call to 'always_inline' '_mm256_shuffle_epi8': target specific option mismatch
lsh-impl.c:   588 | _mm256_shuffle_epi8 (__m256i __X, __m256i __Y)
lsh-impl.c:       | ^~~~~~~~~~~~~~~~~~~
lsh-impl.c: lsh-impl.c:152:18: note: called from here
lsh-impl.c:   152 | #define ADD(x,y) _mm256_add_epi32(x,y)
lsh-impl.c:       |                  ^~~~~~~~~~~~~~~~~~~~~
lsh-impl.c: lsh-impl.c:172:34: note: in expansion of macro 'ADD'
lsh-impl.c:   172 |         i_state->submsg_e_r[0] = ADD(i_state->submsg_o_r[0], SHUFFLE8(i_state->submsg_e_r[0], perm_step));
lsh-impl.c:       |                                  ^~~
lsh-impl.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/immintrin.h:47,
lsh-impl.c:                  from lsh-impl.c:35:
lsh-impl.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
avx2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


lsh-impl.c: lsh-impl.c:126:39: warning: unused variable 'g_MsgWordPermInfo' [-Wunused-const-variable]
lsh-impl.c: static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh-impl.c:                                       ^
lsh-impl.c: 1 warning generated.
lsh.c: lsh.c:126:39: warning: unused variable 'g_MsgWordPermInfo' [-Wunused-const-variable]
lsh.c: static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh.c:                                       ^
lsh.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
ssse3clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


lsh-impl.c: lsh-impl.c:126:39: warning: unused variable 'g_MsgWordPermInfo' [-Wunused-const-variable]
lsh-impl.c: static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh-impl.c:                                       ^
lsh-impl.c: lsh-impl.c:221:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'rotate_msg_gamma' that is compiled without support for 'ssse3'
lsh-impl.c:         cv_r[0] = SHUFFLE8(cv_r[0], perm_step[0]);
lsh-impl.c:                   ^
lsh-impl.c: lsh-impl.c:143:23: note: expanded from macro 'SHUFFLE8'
lsh-impl.c: #define SHUFFLE8(x,y) _mm_shuffle_epi8(x,y)
lsh-impl.c:                       ^
lsh-impl.c: lsh-impl.c:222:12: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'rotate_msg_gamma' that is compiled without support for 'ssse3'
lsh-impl.c:         cv_r[1] = SHUFFLE8(cv_r[1], perm_step[1]);
lsh-impl.c:                   ^
lsh-impl.c: lsh-impl.c:143:23: note: expanded from macro 'SHUFFLE8'
lsh-impl.c: #define SHUFFLE8(x,y) _mm_shuffle_epi8(x,y)
lsh-impl.c:                       ^
lsh-impl.c: 1 warning and 2 errors generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
ssse3clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


lsh-impl.c: lsh-impl.c:126:39: warning: 'g_MsgWordPermInfo' defined but not used [-Wunused-const-variable=]
lsh-impl.c:   126 | static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh-impl.c:       |                                       ^~~~~~~~~~~~~~~~~
lsh.c: lsh.c:126:39: warning: 'g_MsgWordPermInfo' defined but not used [-Wunused-const-variable=]
lsh.c:   126 | static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh.c:       |                                       ^~~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
ssse3gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


lsh-impl.c: lsh-impl.c:125:39: warning: unused variable 'g_MsgWordPermInfo' [-Wunused-const-variable]
lsh-impl.c: static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh-impl.c:                                       ^
lsh-impl.c: lsh-impl.c:203:10: error: '__builtin_ia32_vprotdi' needs target feature xop
lsh-impl.c:         cv[0] = _mm_roti_epi32(cv[0], ROT_EVEN_ALPHA);
lsh-impl.c:                 ^
lsh-impl.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:234:13: note: expanded from macro '_mm_roti_epi32'
lsh-impl.c:   ((__m128i)__builtin_ia32_vprotdi((__v4si)(__m128i)(A), (N)))
lsh-impl.c:             ^
lsh-impl.c: lsh-impl.c:204:10: error: '__builtin_ia32_vprotdi' needs target feature xop
lsh-impl.c:         cv[1] = _mm_roti_epi32(cv[1], ROT_EVEN_ALPHA);
lsh-impl.c:                 ^
lsh-impl.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:234:13: note: expanded from macro '_mm_roti_epi32'
lsh-impl.c:   ((__m128i)__builtin_ia32_vprotdi((__v4si)(__m128i)(A), (N)))
lsh-impl.c:             ^
lsh-impl.c: lsh-impl.c:207:10: error: '__builtin_ia32_vprotdi' needs target feature xop
lsh-impl.c:         cv[0] = _mm_roti_epi32(cv[0], ROT_EVEN_BETA);
lsh-impl.c:                 ^
lsh-impl.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:234:13: note: expanded from macro '_mm_roti_epi32'
lsh-impl.c:   ((__m128i)__builtin_ia32_vprotdi((__v4si)(__m128i)(A), (N)))
lsh-impl.c:             ^
lsh-impl.c: lsh-impl.c:208:10: error: '__builtin_ia32_vprotdi' needs target feature xop
lsh-impl.c:         cv[1] = _mm_roti_epi32(cv[1], ROT_EVEN_BETA);
lsh-impl.c:                 ^
lsh-impl.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:234:13: note: expanded from macro '_mm_roti_epi32'
lsh-impl.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
xopclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
xopclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
xopclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
xopclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
xopclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


lsh-impl.c: lsh-impl.c:125:39: warning: 'g_MsgWordPermInfo' defined but not used [-Wunused-const-variable=]
lsh-impl.c:   125 | static const LSH_ALIGNED_(32) lsh_u32 g_MsgWordPermInfo[8] = {
lsh-impl.c:       |                                       ^~~~~~~~~~~~~~~~~
lsh-impl.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86intrin.h:38,
lsh-impl.c:                  from lsh-impl.c:34:
lsh-impl.c: lsh-impl.c: In function 'rotate_blk_even_alpha':
lsh-impl.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/xopintrin.h:266:1: error: inlining failed in call to 'always_inline' '_mm_roti_epi32': target specific option mismatch
lsh-impl.c:   266 | _mm_roti_epi32(__m128i __A, const int __B)
lsh-impl.c:       | ^~~~~~~~~~~~~~
lsh-impl.c: lsh-impl.c:204:17: note: called from here
lsh-impl.c:   204 |         cv[1] = _mm_roti_epi32(cv[1], ROT_EVEN_ALPHA);
lsh-impl.c:       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lsh-impl.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/11/include/x86intrin.h:38,
lsh-impl.c:                  from lsh-impl.c:34:
lsh-impl.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/xopintrin.h:266:1: error: inlining failed in call to 'always_inline' '_mm_roti_epi32': target specific option mismatch
lsh-impl.c:   266 | _mm_roti_epi32(__m128i __A, const int __B)
lsh-impl.c:       | ^~~~~~~~~~~~~~
lsh-impl.c: lsh-impl.c:203:17: note: called from here
lsh-impl.c:   203 |         cv[0] = _mm_roti_epi32(cv[0], ROT_EVEN_ALPHA);
lsh-impl.c:       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
xopgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
xopgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
xopgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
xopgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Namespace violations


lsh-impl.o lsh256_digest T
lsh-impl.o lsh256_final T
lsh-impl.o lsh256_init T
lsh-impl.o lsh256_update T
lsh.o lsh256_digest T
lsh.o lsh256_final T
lsh.o lsh256_init T
lsh.o lsh256_update T

Number of similar (implementation,compiler) pairs: 26, namely:
ImplementationCompiler
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
sse2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
sse2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
sse2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
sse2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
sse2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10BA43
   at 0x...: word_perm (lsh-impl.c:237)
   by 0x...: compress (lsh-impl.c:290)
   by 0x...: lsh256_final (lsh-impl.c:516)
   by 0x...: lsh256_digest (lsh-impl.c:537)
   by 0x...: test (try.c:90)
   by 0x...: main (try-anything.c:345)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
sse2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10BAF3
   at 0x...: word_perm (lsh-impl.c:237)
   by 0x...: compress (lsh-impl.c:290)
   by 0x...: lsh256_final (lsh-impl.c:516)
   by 0x...: lsh256_digest (lsh-impl.c:537)
   by 0x...: test (try.c:90)
   by 0x...: main (try-anything.c:345)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
sse2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10B46D
   at 0x...: word_perm (lsh-impl.c:237)
   by 0x...: compress (lsh-impl.c:290)
   by 0x...: lsh256_final (lsh-impl.c:516)
   by 0x...: lsh256_digest (lsh-impl.c:537)
   by 0x...: crypto_hash_lsh256_sse2_constbranchindex (wrapper.c:10)
   by 0x...: test (try.c:90)
   by 0x...: main (try-anything.c:345)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
sse2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x10B19F
   at 0x...: word_perm (lsh-impl.c:237)
   by 0x...: compress (lsh-impl.c:290)
   by 0x...: lsh256_final (lsh-impl.c:516)
   by 0x...: lsh256_digest (lsh-impl.c:537)
   by 0x...: test (try.c:90)
   by 0x...: main (try-anything.c:345)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
sse2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Passed TIMECOP


TIMECOP iterations: 10

Number of similar (implementation,compiler) pairs: 30, namely:
ImplementationCompiler
cryptoppclang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
cryptoppclang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
cryptoppclang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
cryptoppclang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
cryptoppg++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
cryptoppg++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
cryptoppg++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall
cryptoppg++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
sse2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
sse2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
ssse3gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
ssse3gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)