Implementation notes: amd64, gpu, crypto_hash/fugue384

Computer: gpu
Architecture: amd64
CPU ID: GenuineIntel-000206d7-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_hash
Primitive: fugue384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3671229244 0 039558 776 808ccalik/aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082220190816
4843631007 0 043757 784 808ccalik/aesnigcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082220190816
5054432847 0 045941 760 1136ccalik/aesniclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082220190816
5106027611 0 037862 776 808ccalik/aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082220190816
5120827611 0 037862 776 808ccalik/aesnigcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082220190816
5151231007 0 043757 784 808ccalik/aesnigcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082220190816
5286029244 0 039558 776 808ccalik/aesnigcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082220190816
5371229244 0 039558 776 808ccalik/aesnigcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082220190816
5401232911 0 046661 760 1136ccalik/aesniclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082220190816
5440429244 0 039558 776 808ccalik/aesnigcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082220190816
5454025432 0 034729 752 776ccalik/aesnigcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082220190816
5500832911 0 046661 760 1136ccalik/aesniclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082220190816
5642825432 0 034729 752 776ccalik/aesnigcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082220190816
5710025432 0 034729 752 776ccalik/aesnigcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082220190816
5844427611 0 037862 776 808ccalik/aesnigcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082220190816
5886438628 0 048942 776 808ccalik/vpermgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019082220190816
5889631007 0 043661 784 808ccalik/aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082220190816
5952027611 0 037862 776 808ccalik/aesnigcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082220190816
5964036711 0 046958 776 808ccalik/vpermgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019082220190816
5971640951 0 053605 784 808ccalik/vpermgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019082220190816
6010425432 0 034729 752 776ccalik/aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082220190816
6060440951 0 053701 784 808ccalik/vpermgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082220190816
6118841583 0 054837 760 1136ccalik/vpermclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2019082220190816
6240431007 0 043757 784 808ccalik/aesnigcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019082220190816
6626033928 0 043233 752 776ccalik/vpermgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019082220190816
6642841519 0 054117 760 1136ccalik/vpermclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019082220190816
6646038628 0 048942 776 808ccalik/vpermgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019082220190816
6659238628 0 048942 776 808ccalik/vpermgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019082220190816
6697633928 0 043233 752 776ccalik/vpermgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019082220190816
6758438628 0 048942 776 808ccalik/vpermgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019082220190816
6872036711 0 046958 776 808ccalik/vpermgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019082220190816
7110446772 0 057086 776 808ccalik/vpermgcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2019082220190816
7144041583 0 054837 760 1136ccalik/vpermclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2019082220190816
7190836711 0 046958 776 808ccalik/vpermgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019082220190816
7202440951 0 053701 784 808ccalik/vpermgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019082220190816
7322846596 0 056870 776 808ccalik/vpermgcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2019082220190816
7342049319 0 061853 784 808ccalik/vpermgcc_-m64_-march=corei7_-O3_-fomit-frame-pointer2019082220190816
7385240951 0 053701 784 808ccalik/vpermgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019082220190816
7402447804 0 058078 776 808ccalik/vpermgcc_-m64_-march=core2_-O2_-fomit-frame-pointer2019082220190816
7542441519 0 054117 760 1136ccalik/vpermclang_-O3_-fwrapv_-mavx_-fomit-frame-pointer_-Qunused-arguments2019082220190816
7565249175 0 061805 784 808ccalik/vpermgcc_-m64_-march=core2_-msse4_-O3_-fomit-frame-pointer2019082220190816
7648836711 0 046958 776 808ccalik/vpermgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019082220190816
7658044256 0 054510 776 808ccalik/vpermgcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2019082220190816
7697233928 0 043233 752 776ccalik/vpermgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019082220190816
7698850375 0 063005 784 808ccalik/vpermgcc_-m64_-march=core2_-O3_-fomit-frame-pointer2019082220190816
8135244256 0 054510 776 808ccalik/vpermgcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2019082220190816
8184839134 0 048433 752 776ccalik/vpermgcc_-m64_-march=core2_-Os_-fomit-frame-pointer2019082220190816
8314433928 0 043233 752 776ccalik/vpermgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019082220190816
8428449175 0 061741 784 808ccalik/vpermgcc_-m64_-march=core2_-msse4.1_-O3_-fomit-frame-pointer2019082220190816
8470446596 0 056870 776 808ccalik/vpermgcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2019082220190816
8811638047 0 047345 752 776ccalik/vpermgcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2019082220190816
8848838047 0 047345 752 776ccalik/vpermgcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2019082220190816
8861645121 0 055366 776 808ccalik/vpermgcc_-m64_-march=core2_-O_-fomit-frame-pointer2019082220190816
9062844155 0 054398 776 808ccalik/vpermgcc_-m64_-march=corei7_-O_-fomit-frame-pointer2019082220190816
9879638456 0 047745 752 776ccalik/vpermgcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2019082220190816

Test failure

Implementation: ccalik/aesni
Security model: unknown
Compiler: gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ccalik/vperm

Compiler output

Implementation: ccalik/aesni
Security model: unknown
Compiler: cc
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:301:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4c));\
hash.c: ^
hash.c: hash.c:254:2: note: in expansion of macro 'POSTSUPERMIX'
hash.c: POSTSUPERMIX(t0, t1, t2, t3, t4)
hash.c: ^~~~~~~~~~~~
hash.c: hash.c:348:2: note: in expansion of macro 'SUPERMIX'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, s0);\
hash.c: ^~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:298:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4b));\
hash.c: ...

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc ccalik/aesni
gcc ccalik/aesni
gcc -O2 -fomit-frame-pointer ccalik/aesni
gcc -O3 -fomit-frame-pointer ccalik/aesni
gcc -O -fomit-frame-pointer ccalik/aesni
gcc -Os -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -O -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops ccalik/aesni
gcc -funroll-loops -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -Os -fomit-frame-pointer ccalik/aesni
gcc -march=barcelona -O2 -fomit-frame-pointer ccalik/aesni
gcc -march=barcelona -O3 -fomit-frame-pointer ccalik/aesni
gcc -march=barcelona -O -fomit-frame-pointer ccalik/aesni
gcc -march=barcelona -Os -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -Os -fomit-frame-pointer ccalik/aesni

Compiler output

Implementation: ccalik/aesni
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:249:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_shuffle_epi8(r0, M128(_inv_shift_rows));\
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'Compress256' that is compiled without support for 'aes'
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:250:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: hash.c:341:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, r0);\
hash.c: ^
hash.c: hash.c:253:2: note: expanded from macro 'SUPERMIX'
hash.c: PRESUPERMIX(t0, t1, t2, t3, t4);\
hash.c: ^
hash.c: hash.c:245:25: note: expanded from macro 'PRESUPERMIX'
hash.c: s2 = _mm_xor_si128(s2, _mm_shuffle_epi8(M128(_mul2mask), t1));\
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ccalik/aesni
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni

Compiler output

Implementation: ccalik/aesni
Security model: unknown
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:449:4: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'Compress256' that is compiled without support for 'aes'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:250:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'Compress256' that is compiled without support for 'aes'
hash.c: hash.c:347:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(s0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:250:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:457:4: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'Compress256' that is compiled without support for 'aes'
hash.c: SUBROUND256_2(ctx->state[6], ctx->state[7], ctx->state[5], ctx->state[0], ctx->state[5], ctx->state[6], ctx->state[4], ctx->state[9]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:250:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ccalik/aesni

Compiler output

Implementation: ccalik/aesni
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:301:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4c));\
hash.c: ^
hash.c: hash.c:254:2: note: in expansion of macro 'POSTSUPERMIX'
hash.c: POSTSUPERMIX(t0, t1, t2, t3, t4)
hash.c: ^~~~~~~~~~~~
hash.c: hash.c:348:2: note: in expansion of macro 'SUPERMIX'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, s0);\
hash.c: ^~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:298:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4b));\
hash.c: ...
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:301:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4c));\
hash.c: ^
hash.c: hash.c:254:2: note: in expansion of macro 'POSTSUPERMIX'
hash.c: POSTSUPERMIX(t0, t1, t2, t3, t4)
hash.c: ^~~~~~~~~~~~
hash.c: hash.c:348:2: note: in expansion of macro 'SUPERMIX'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, s0);\
hash.c: ^~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:298:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4b));\
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=barcelona -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ccalik/aesni

Compiler output

Implementation: ccalik/aesni
Security model: unknown
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
hash.c: In file included from hash.c:26:0:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
hash.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:250:8: note: called from here
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:347:2: note: in expansion of macro 'SUBSTITUTE'
hash.c: SUBSTITUTE(s0, _t1, _t2, _t3, _t0);\
hash.c: ^~~~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash.c:26:0:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/wmmintrin.h:69:1: error: inlining failed in call to always_inline '_mm_aesenclast_si128': target specific option mismatch
hash.c: _mm_aesenclast_si128 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:250:8: note: called from here
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:340:2: note: in expansion of macro 'SUBSTITUTE'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^~~~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: ...

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=corei7 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ccalik/aesni

Compiler output

Implementation: ccalik/vperm
Security model: unknown
Compiler: cc
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:301:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4c));\
hash.c: ^
hash.c: hash.c:269:2: note: in expansion of macro 'POSTSUPERMIX'
hash.c: POSTSUPERMIX(t0, t1, t2, t3, t4);\
hash.c: ^~~~~~~~~~~~
hash.c: hash.c:348:2: note: in expansion of macro 'SUPERMIX'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, s0);\
hash.c: ^~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:298:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4b));\
hash.c: ...

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc ccalik/vperm
gcc ccalik/vperm
gcc -O2 -fomit-frame-pointer ccalik/vperm
gcc -O3 -fomit-frame-pointer ccalik/vperm
gcc -O -fomit-frame-pointer ccalik/vperm
gcc -Os -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -O -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops ccalik/vperm
gcc -funroll-loops -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -Os -fomit-frame-pointer ccalik/vperm
gcc -march=barcelona -O2 -fomit-frame-pointer ccalik/vperm
gcc -march=barcelona -O3 -fomit-frame-pointer ccalik/vperm
gcc -march=barcelona -O -fomit-frame-pointer ccalik/vperm
gcc -march=barcelona -Os -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -Os -fomit-frame-pointer ccalik/vperm

Compiler output

Implementation: ccalik/vperm
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
hash.c: hash.c:448:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: TIX256(pmsg, ctx->state[1], ctx->state[0], ctx->state[6], ctx->state[8], _t0, _t1, _t2);
hash.c: ^
hash.c: hash.c:169:2: note: expanded from macro 'TIX256'
hash.c: TRANSFORM(t1, _k_ipt, t2, t3);\
hash.c: ^
hash.c: ./vperm.h:52:7: note: expanded from macro 'TRANSFORM'
hash.c: t1 = _mm_shuffle_epi8(*((__m128i*)table + 1), t1);\
hash.c: ^
hash.c: hash.c:448:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: hash.c:169:2: note: expanded from macro 'TIX256'
hash.c: TRANSFORM(t1, _k_ipt, t2, t3);\
hash.c: ^
hash.c: ./vperm.h:53:7: note: expanded from macro 'TRANSFORM'
hash.c: x = _mm_shuffle_epi8(*((__m128i*)table + 0), x);\
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:265:20: note: expanded from macro 'SUBSTITUTE'
hash.c: #define SUBSTITUTE SUBSTITUTE_VPERM_CORE
hash.c: ^
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ccalik/vperm
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm

Compiler output

Implementation: ccalik/vperm
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:301:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4c));\
hash.c: ^
hash.c: hash.c:269:2: note: in expansion of macro 'POSTSUPERMIX'
hash.c: POSTSUPERMIX(t0, t1, t2, t3, t4);\
hash.c: ^~~~~~~~~~~~
hash.c: hash.c:348:2: note: in expansion of macro 'SUPERMIX'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, s0);\
hash.c: ^~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:298:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4b));\
hash.c: ...
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: hash.c: In function 'Compress256':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:301:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4c));\
hash.c: ^
hash.c: hash.c:269:2: note: in expansion of macro 'POSTSUPERMIX'
hash.c: POSTSUPERMIX(t0, t1, t2, t3, t4);\
hash.c: ^~~~~~~~~~~~
hash.c: hash.c:348:2: note: in expansion of macro 'SUPERMIX'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, s0);\
hash.c: ^~~~~~~~
hash.c: hash.c:449:4: note: in expansion of macro 'SUBROUND256_2'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^~~~~~~~~~~~~
hash.c: In file included from hash_api.h:29:0,
hash.c: from hash.c:20:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
hash.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: ^~~~~~~~~~~~~~~~
hash.c: hash.c:298:6: note: called from here
hash.c: t0 = _mm_shuffle_epi8(t0, M128(_supermix4b));\
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=barcelona -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ccalik/vperm