Implementation notes: amd64, bolero, crypto_sign/sphincsf192sha256

Computer: bolero
Architecture: amd64
CPU ID: GenuineIntel-000406f1-bfebfbff
SUPERCOP version: 20190110
Operation: crypto_sign
Primitive: sphincsf192sha256
TimeImplementationCompilerBenchmark dateSUPERCOP version
235754592avx2clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018091920180818
237091212avx2clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018091920180818
251516388avx2clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018091920180818
253278712avx2clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018091920180818
266481368avx2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018091920180818
268455912avx2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018091920180818
268494532avx2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018091920180818
268526360avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018091920180818
272376484avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018091920180818
272979432avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018091920180818
273038388avx2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018091920180818
273085992avx2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018091920180818
273580340avx2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018091920180818
301554836avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018091920180818
303643552avx2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018091920180818
304226664avx2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018091920180818
516748108refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018091920180818
517371520refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018091920180818
517377968refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018091920180818
517693992refclang -O3 -fomit-frame-pointer -Qunused-arguments2018091920180818
517711064refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018091920180818
518323832refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018091920180818
521101700refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018091920180818
521984484refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018091920180818
522333712refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018091920180818
523058352refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018091920180818
523224136refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018091920180818
524078732refgcc -march=nocona -O3 -fomit-frame-pointer2018091920180818
524818976refgcc -march=barcelona -O3 -fomit-frame-pointer2018091920180818
525506116refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018091920180818
525548468refgcc -m64 -O3 -fomit-frame-pointer2018091920180818
526619552refgcc -O3 -fomit-frame-pointer2018091920180818
526917860refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018091920180818
527143436refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018091920180818
527445064refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018091920180818
527559708refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018091920180818
527712644refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018091920180818
527794440refgcc -march=k8 -O3 -fomit-frame-pointer2018091920180818
528032252refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018091920180818
528605432refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018091920180818
528636828refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018091920180818
528637188refgcc -funroll-loops -O3 -fomit-frame-pointer2018091920180818
529931548refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018091920180818
530002940refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018091920180818
530139272refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018091920180818
530193752refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018091920180818
530603536refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018091920180818
530677144refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018091920180818
530895268refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018091920180818
531338048refgcc -march=k8 -O2 -fomit-frame-pointer2018091920180818
531849164refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018091920180818
531888300refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018091920180818
531955256refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018091920180818
532020132refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018091920180818
532102516refgcc -march=barcelona -O2 -fomit-frame-pointer2018091920180818
532133372refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018091920180818
532233104refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018091920180818
532348704refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018091920180818
532386236refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018091920180818
532406100refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018091920180818
532434932refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018091920180818
532452896refgcc -m64 -O2 -fomit-frame-pointer2018091920180818
532497908refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018091920180818
532611444refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018091920180818
532623548refgcc -O2 -fomit-frame-pointer2018091920180818
532821628refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018091920180818
532887472refgcc -march=nocona -O2 -fomit-frame-pointer2018091920180818
532904468refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018091920180818
532987832refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018091920180818
533566108refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018091920180818
533742368refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018091920180818
533798216refgcc -funroll-loops -O2 -fomit-frame-pointer2018091920180818
533862632refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018091920180818
534044192refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018091920180818
534081048refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018091920180818
534167884refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018091920180818
534200296refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018091920180818
535060032refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018091920180818
535233600refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018091920180818
535872860refgcc -m64 -march=nocona -O -fomit-frame-pointer2018091920180818
535910036refgcc -march=nocona -O -fomit-frame-pointer2018091920180818
536095724refgcc -fno-schedule-insns -O -fomit-frame-pointer2018091920180818
536159912refgcc -O -fomit-frame-pointer2018091920180818
536165108refgcc -m64 -O -fomit-frame-pointer2018091920180818
536563900refgcc -march=barcelona -O -fomit-frame-pointer2018091920180818
536566404refgcc -m64 -march=barcelona -O -fomit-frame-pointer2018091920180818
537239960refgcc -funroll-loops -m64 -O -fomit-frame-pointer2018091920180818
537314060refgcc -funroll-loops -O -fomit-frame-pointer2018091920180818
537326392refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018091920180818
537719340refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018091920180818
538118384refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018091920180818
538489152refgcc -m64 -march=k8 -O -fomit-frame-pointer2018091920180818
538580764refgcc -march=k8 -O -fomit-frame-pointer2018091920180818
538649064refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018091920180818
538649772refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018091920180818
538928816refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018091920180818
539391460refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018091920180818
539492928refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018091920180818
540489688refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018091920180818
540724044refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018091920180818
542443524refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018091920180818
542494448refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018091920180818
542508052refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018091920180818
542525688refgcc -m64 -march=corei7 -O -fomit-frame-pointer2018091920180818
542531876refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018091920180818
542989740refgcc -m64 -march=core2 -O -fomit-frame-pointer2018091920180818
543171364refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018091920180818
549714756refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018091920180818
549797784refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018091920180818
549950024refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018091920180818
550163464refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018091920180818
550308212refgcc -funroll-loops -Os -fomit-frame-pointer2018091920180818
550657004refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018091920180818
550683280refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018091920180818
550909776refgcc -march=k8 -Os -fomit-frame-pointer2018091920180818
550930808refgcc -m64 -march=k8 -Os -fomit-frame-pointer2018091920180818
550995316refgcc -Os -fomit-frame-pointer2018091920180818
551089224refgcc -fno-schedule-insns -Os -fomit-frame-pointer2018091920180818
551123072refgcc -m64 -Os -fomit-frame-pointer2018091920180818
551288736refgcc -march=barcelona -Os -fomit-frame-pointer2018091920180818
551438008refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018091920180818
551495380refgcc -m64 -march=core2 -Os -fomit-frame-pointer2018091920180818
551582748refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018091920180818
551661008refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018091920180818
551714588refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018091920180818
551719088refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018091920180818
551733064refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018091920180818
551873124refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018091920180818
552043500refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018091920180818
555127380refgcc -march=nocona -Os -fomit-frame-pointer2018091920180818
555240392refgcc -m64 -march=nocona -Os -fomit-frame-pointer2018091920180818
555470288refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018091920180818
555668388refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018091920180818
557463772refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018091920180818
627985880refgcc2018091920180818
628402560refgcc -funroll-loops2018091920180818
638365764refcc2018091920180818

Compiler output

Implementation: crypto_sign/sphincsf192sha256/avx2
Compiler: cc
sha256avx.c: sha256avx.c: In function 'transpose':
sha256avx.c: sha256avx.c:10:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:878:1: error: inlining failed in call to always_inline '_mm256_unpackhi_epi64': target specific option mismatch
sha256avx.c: _mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
sha256avx.c: ^
sha256avx.c: sha256avx.c:25:15: error: called from here
sha256avx.c: tmp1[7] = _mm256_unpackhi_epi64(tmp0[5], tmp0[7]);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:906:1: error: inlining failed in call to always_inline '_mm256_unpacklo_epi64': target specific option mismatch
sha256avx.c: _mm256_unpacklo_epi64 (__m256i __A, __m256i __B)
sha256avx.c: ^
sha256avx.c: sha256avx.c:24:15: error: called from here
sha256avx.c: tmp1[6] = _mm256_unpacklo_epi64(tmp0[5], tmp0[7]);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc avx2
gcc avx2
gcc -funroll-loops avx2

Compiler output

Implementation: crypto_sign/sphincsf192sha256/avx2
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
sha256avx.c: sha256avx.c:10:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:11:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[1] = _mm256_unpackhi_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:12:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[2] = _mm256_unpacklo_epi32(s[2], s[3]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:13:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[3] = _mm256_unpackhi_epi32(s[2], s[3]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:14:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[4] = _mm256_unpacklo_epi32(s[4], s[5]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:15:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[5] = _mm256_unpackhi_epi32(s[4], s[5]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:16:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[6] = _mm256_unpacklo_epi32(s[6], s[7]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:17:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: tmp0[7] = _mm256_unpackhi_epi32(s[6], s[7]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:18:15: error: always_inline function '_mm256_unpacklo_epi64' requires target feature 'sse4.2', but would be inlined into function 'transpose' that is compiled without support for 'sse4.2'
sha256avx.c: ...

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

Compiler output

Implementation: crypto_sign/sphincsf192sha256/avx2
Compiler: clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments
sha256avx.c: sha256avx.c:10:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:11:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[1] = _mm256_unpackhi_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:12:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[2] = _mm256_unpacklo_epi32(s[2], s[3]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:13:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[3] = _mm256_unpackhi_epi32(s[2], s[3]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:14:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[4] = _mm256_unpacklo_epi32(s[4], s[5]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:15:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[5] = _mm256_unpackhi_epi32(s[4], s[5]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:16:15: error: always_inline function '_mm256_unpacklo_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[6] = _mm256_unpacklo_epi32(s[6], s[7]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:17:15: error: always_inline function '_mm256_unpackhi_epi32' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: tmp0[7] = _mm256_unpackhi_epi32(s[6], s[7]);
sha256avx.c: ^
sha256avx.c: sha256avx.c:18:15: error: always_inline function '_mm256_unpacklo_epi64' requires target feature 'avx2', but would be inlined into function 'transpose' that is compiled without support for 'avx2'
sha256avx.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments avx2
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments avx2

Compiler output

Implementation: crypto_sign/sphincsf192sha256/avx2
Compiler: gcc -O2 -fomit-frame-pointer
sha256avx.c: sha256avx.c: In function 'transpose':
sha256avx.c: sha256avx.c:10:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:33:12: error: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:32:12: error: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: ...

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer avx2
gcc -O3 -fomit-frame-pointer avx2
gcc -O -fomit-frame-pointer avx2
gcc -Os -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -O -fomit-frame-pointer avx2
gcc -funroll-loops -Os -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer avx2
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer avx2
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer avx2
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer avx2
gcc -m64 -O2 -fomit-frame-pointer avx2
gcc -m64 -O3 -fomit-frame-pointer avx2
gcc -m64 -O -fomit-frame-pointer avx2
gcc -m64 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer avx2
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -O -fomit-frame-pointer avx2
gcc -m64 -march=corei7 -Os -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O2 -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O3 -fomit-frame-pointer avx2
gcc -m64 -march=k8 -O -fomit-frame-pointer avx2
gcc -m64 -march=k8 -Os -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O2 -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O3 -fomit-frame-pointer avx2
gcc -m64 -march=nocona -O -fomit-frame-pointer avx2
gcc -m64 -march=nocona -Os -fomit-frame-pointer avx2
gcc -march=barcelona -O2 -fomit-frame-pointer avx2
gcc -march=barcelona -O3 -fomit-frame-pointer avx2
gcc -march=barcelona -O -fomit-frame-pointer avx2
gcc -march=barcelona -Os -fomit-frame-pointer avx2
gcc -march=k8 -O2 -fomit-frame-pointer avx2
gcc -march=k8 -O3 -fomit-frame-pointer avx2
gcc -march=k8 -O -fomit-frame-pointer avx2
gcc -march=k8 -Os -fomit-frame-pointer avx2
gcc -march=nocona -O2 -fomit-frame-pointer avx2
gcc -march=nocona -O3 -fomit-frame-pointer avx2
gcc -march=nocona -O -fomit-frame-pointer avx2
gcc -march=nocona -Os -fomit-frame-pointer avx2

Compiler output

Implementation: crypto_sign/sphincsf192sha256/avx2
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
sha256avx.c: sha256avx.c: In function 'transpose':
sha256avx.c: sha256avx.c:10:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:33:12: error: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:32:12: error: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: ...
sha256avx.c: sha256avx.c: In function 'transpose':
sha256avx.c: sha256avx.c:10:13: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
sha256avx.c: tmp0[0] = _mm256_unpacklo_epi32(s[0], s[1]);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:33:12: error: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:32:12: error: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: ...

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

Compiler output

Implementation: crypto_sign/sphincsf192sha256/avx2
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: sha256avx.c: In function 'transpose':
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:33:12: error: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: sha256avx.c:32:12: error: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^
sha256avx.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:1081:1: error: inlining failed in call to always_inline '_mm256_permute2x128_si256': target specific option mismatch
sha256avx.c: _mm256_permute2x128_si256 (__m256i __X, __m256i __Y, const int __M)
sha256avx.c: ^
sha256avx.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer avx2
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer avx2
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer avx2