Implementation notes: amd64, genji262, crypto_sign/sphincss128sha256

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20180818
Operation: crypto_sign
Primitive: sphincss128sha256
TimeImplementationCompilerBenchmark dateSUPERCOP version
1472406386refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018082020180818
1473191544refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018082020180818
1473876734refgcc -funroll-loops -O3 -fomit-frame-pointer2018082020180818
1478770942refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018082020180818
1479051288refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082020180818
1482706368refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018082020180818
1485253748refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018082020180818
1487488904refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018082020180818
1491003558refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018082020180818
1492183814refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018082020180818
1496549406refgcc -march=nocona -O3 -fomit-frame-pointer2018082020180818
1496691306refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018082020180818
1500835732refgcc -march=k8 -O3 -fomit-frame-pointer2018082020180818
1500888532refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018082020180818
1502550940refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018082020180818
1504252662refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018082020180818
1506700888refgcc -march=barcelona -O3 -fomit-frame-pointer2018082020180818
1508413016refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018082020180818
1510195016refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018082020180818
1515222654refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018082020180818
1515673984refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018082020180818
1517297518refgcc -funroll-loops -O2 -fomit-frame-pointer2018082020180818
1517871190refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018082020180818
1520069848refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082020180818
1522335606refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018082020180818
1524598086refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018082020180818
1525087916refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018082020180818
1526976066refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018082020180818
1527955132refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018082020180818
1532475054refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018082020180818
1533677178refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018082020180818
1534615830refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018082020180818
1534619878refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018082020180818
1534693380refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018082020180818
1536122742refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018082020180818
1537062098refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018082020180818
1537352212refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018082020180818
1539380414refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018082020180818
1540342958refgcc -O2 -fomit-frame-pointer2018082020180818
1540453794refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018082020180818
1540968484refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018082020180818
1541430022refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018082020180818
1544973584refgcc -O3 -fomit-frame-pointer2018082020180818
1545738612refgcc -m64 -march=core2 -O -fomit-frame-pointer2018082020180818
1547517752refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018082020180818
1548910660refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082020180818
1550389478refgcc -O -fomit-frame-pointer2018082020180818
1551706178refgcc -m64 -O3 -fomit-frame-pointer2018082020180818
1552078154refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018082020180818
1553074468refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018082020180818
1553346608refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082020180818
1554892526refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082020180818
1555204816refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018082020180818
1555213220refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018082020180818
1556343822refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018082020180818
1559713606refgcc -m64 -O2 -fomit-frame-pointer2018082020180818
1563176934refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018082020180818
1565033866refgcc -march=barcelona -O2 -fomit-frame-pointer2018082020180818
1567075708refgcc -m64 -O -fomit-frame-pointer2018082020180818
1570157974refgcc -funroll-loops -m64 -O -fomit-frame-pointer2018082020180818
1571672476refgcc -march=nocona -O2 -fomit-frame-pointer2018082020180818
1572868484refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018082020180818
1574059872refgcc -m64 -march=corei7 -O -fomit-frame-pointer2018082020180818
1574202718refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018082020180818
1577450710refgcc -funroll-loops -O -fomit-frame-pointer2018082020180818
1580502462refgcc -march=k8 -O -fomit-frame-pointer2018082020180818
1581088608refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018082020180818
1582273990refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018082020180818
1583371460refgcc -march=nocona -O -fomit-frame-pointer2018082020180818
1584756624refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018082020180818
1585313774refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018082020180818
1585336918refgcc -fno-schedule-insns -O -fomit-frame-pointer2018082020180818
1589322504refgcc -m64 -march=k8 -O -fomit-frame-pointer2018082020180818
1593476280refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018082020180818
1595604648refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018082020180818
1595619762refgcc -m64 -march=barcelona -O -fomit-frame-pointer2018082020180818
1597560756refgcc -m64 -march=nocona -O -fomit-frame-pointer2018082020180818
1606171842refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018082020180818
1607355750refgcc -march=barcelona -O -fomit-frame-pointer2018082020180818
1613362080refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018082020180818
1622238200refgcc -march=k8 -O2 -fomit-frame-pointer2018082020180818
1679983404refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018082020180818
1687242260refgcc -Os -fomit-frame-pointer2018082020180818
1687340600refgcc -m64 -Os -fomit-frame-pointer2018082020180818
1692320256refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018082020180818
1693929996refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018082020180818
1695116522refgcc -fno-schedule-insns -Os -fomit-frame-pointer2018082020180818
1698515654refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018082020180818
1705402600refgcc -march=nocona -Os -fomit-frame-pointer2018082020180818
1706818916refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018082020180818
1707547006refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018082020180818
1711460916refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018082020180818
1712764548refgcc -m64 -march=nocona -Os -fomit-frame-pointer2018082020180818
1713250154refgcc -funroll-loops -Os -fomit-frame-pointer2018082020180818
1713518510refgcc -m64 -march=k8 -Os -fomit-frame-pointer2018082020180818
1713686898refgcc -march=barcelona -Os -fomit-frame-pointer2018082020180818
1717867866refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018082020180818
1722836720refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018082020180818
1725422468refgcc -march=k8 -Os -fomit-frame-pointer2018082020180818
1726039700refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018082020180818
1727061050refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018082020180818
1733398260refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082020180818
1734374884refgcc -m64 -march=core2 -Os -fomit-frame-pointer2018082020180818
1738794442refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018082020180818
1739076042refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018082020180818
1745550488refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018082020180818
1748056772refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018082020180818
1753267472refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018082020180818
2395507642refgcc2018082020180818
2411349336refcc2018082020180818
2438816138refgcc -funroll-loops2018082020180818
3246853236avx2gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018082020180818
3264659442avx2gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018082020180818
3273651260avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018082020180818
3520461714avx2gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018082020180818
3527733286avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018082020180818
3538572444avx2gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018082020180818
3565271600avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018082020180818
3631400498avx2gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018082020180818
3634201868avx2gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018082020180818
3999210886avx2gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018082020180818
4082446016avx2gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018082020180818
4238446520avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018082020180818

Compiler output

Implementation: crypto_sign/sphincss128sha256/avx2
Compiler: cc
hash_sha256x8.c: In file included from hash_sha256x8.c:9:0:
hash_sha256x8.c: sha256avx.h:67:5: error: unknown type name '__m256i'
hash_sha256x8.c: u256 s[8];
hash_sha256x8.c: ^
hash_sha256x8.c: In file included from hash_sha256x8.c:9:0:
hash_sha256x8.c: sha256avx.h:26:14: error: unknown type name '__m256i'
hash_sha256x8.c: #define u256 __m256i
hash_sha256x8.c: ^
hash_sha256x8.c: sha256avx.h:74:16: note: in expansion of macro 'u256'
hash_sha256x8.c: void transpose(u256 s[8]);
hash_sha256x8.c: ^

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc avx2

Compiler output

Implementation: crypto_sign/sphincss128sha256/avx2
Compiler: gcc
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 /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: tmp1[7] = _mm256_unpackhi_epi64(tmp0[5], tmp0[7]);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: tmp1[6] = _mm256_unpacklo_epi64(tmp0[5], tmp0[7]);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: ...

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

Compiler output

Implementation: crypto_sign/sphincss128sha256/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 /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
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/sphincss128sha256/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 /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
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 /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
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/sphincss128sha256/avx2
Compiler: gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: sha256avx.c: In function 'transpose':
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[7] = _mm256_permute2x128_si256(tmp1[3], tmp1[7], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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: note: called from here
sha256avx.c: s[6] = _mm256_permute2x128_si256(tmp1[2], tmp1[6], 0x31);
sha256avx.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sha256avx.c: In file included from /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/include/immintrin.h:43,
sha256avx.c: from sha256avx.h:3,
sha256avx.c: from sha256avx.c:4:
sha256avx.c: /home_nfs_robin_ib/bdolbeaur/gcc-8.2.0-full+isl/lib/gcc/x86_64-pc-linux-gnu/8.2.0/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