Implementation notes: amd64, rumba5, crypto_sign/sphincsf128haraka

Computer: rumba5
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20181216
Operation: crypto_sign
Primitive: sphincsf128haraka
TimeImplementationCompilerBenchmark dateSUPERCOP version
33750816aesniclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018090220180818
33841248aesniclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018090220180818
33917536aesniclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018090220180818
33967808aesniclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018090220180818
41476320aesnigcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018090220180818
41882784aesnigcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018090220180818
46334784aesnigcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018090220180818
46347392aesnigcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018090220180818
46559040aesnigcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018090220180818
49009440aesnigcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018090220180818
49022944aesnigcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018090220180818
49435200aesnigcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018090220180818
49503136aesnigcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018090220180818
49533248aesnigcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018090220180818
49572192aesnigcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018090220180818
49573696aesnigcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018090220180818
52594592aesnigcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018090220180818
52698976aesnigcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018090220180818
52724096aesnigcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018090220180818
973162912refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018090220180818
974713280refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018090220180818
984183264refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018090220180818
987051808refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018090220180818
987366432refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018090220180818
988205024refgcc -march=k8 -O3 -fomit-frame-pointer2018090220180818
996463232refgcc -march=barcelona -O3 -fomit-frame-pointer2018090220180818
997723104refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018090220180818
999126688refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018090220180818
999791200refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018090220180818
1005625184refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018090220180818
1009825440refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018090220180818
1035606080refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018090220180818
1036600160refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018090220180818
1036805792refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018090220180818
1038259168refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018090220180818
1090044544refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018090220180818
1090746464refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018090220180818
1103825728refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018090220180818
1103850848refgcc -funroll-loops -O3 -fomit-frame-pointer2018090220180818
1104481056refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018090220180818
1104547488refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018090220180818
1104950112refgcc -O3 -fomit-frame-pointer2018090220180818
1105379968refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018090220180818
1105461728refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018090220180818
1105489632refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018090220180818
1105715488refgcc -m64 -O3 -fomit-frame-pointer2018090220180818
1106361152refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018090220180818
1111689504refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018090220180818
1112725856refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018090220180818
1118310720refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018090220180818
1119894304refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018090220180818
1120273472refgcc -march=nocona -O3 -fomit-frame-pointer2018090220180818
1122668096refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018090220180818
1124777376refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018090220180818
1129341120refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018090220180818
1129785888refgcc -funroll-loops -O2 -fomit-frame-pointer2018090220180818
1130937344refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018090220180818
1144563616refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018090220180818
1145521472refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018090220180818
1210375424refgcc -funroll-loops -O -fomit-frame-pointer2018090220180818
1211620800refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018090220180818
1211757792refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018090220180818
1212200768refgcc -funroll-loops -m64 -O -fomit-frame-pointer2018090220180818
1212690016refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018090220180818
1798947808refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018090220180818
1801317664refgcc -march=barcelona -O2 -fomit-frame-pointer2018090220180818
1821563936refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018090220180818
1824663744refgcc -march=nocona -O2 -fomit-frame-pointer2018090220180818
1828199616refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018090220180818
1829345632refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018090220180818
1830785888refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018090220180818
1837047776refgcc -march=k8 -O2 -fomit-frame-pointer2018090220180818
1838959776refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018090220180818
1842807776refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018090220180818
1849248352refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018090220180818
1857354336refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018090220180818
1882646944refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018090220180818
1886188480refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018090220180818
1889485664refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018090220180818
1894391744refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018090220180818
1895274752refgcc -m64 -O2 -fomit-frame-pointer2018090220180818
1898253920refgcc -O2 -fomit-frame-pointer2018090220180818
2105676608refgcc -march=nocona -O -fomit-frame-pointer2018090220180818
2110413952refgcc -m64 -march=nocona -O -fomit-frame-pointer2018090220180818
2143653856refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018090220180818
2143821376refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018090220180818
2166385664refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018090220180818
2167435328refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018090220180818
2167784928refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018090220180818
2170481760refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018090220180818
2173919296refclang -O3 -fomit-frame-pointer -Qunused-arguments2018090220180818
2174719168refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018090220180818
2187238848refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018090220180818
2187926816refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018090220180818
2265864928refgcc -m64 -march=k8 -O -fomit-frame-pointer2018090220180818
2268780576refgcc -m64 -march=barcelona -O -fomit-frame-pointer2018090220180818
2269218880refgcc -march=barcelona -O -fomit-frame-pointer2018090220180818
2269251616refgcc -march=k8 -O -fomit-frame-pointer2018090220180818
2269484160refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018090220180818
2270600640refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018090220180818
2273385600refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018090220180818
2278123584refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018090220180818
2278602624refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018090220180818
2278625664refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018090220180818
2279921856refgcc -funroll-loops -Os -fomit-frame-pointer2018090220180818
2289457888refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018090220180818
2290825536refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018090220180818
2328243136refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018090220180818
2331614528refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018090220180818
2333583904refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018090220180818
2333978688refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018090220180818
2335850048refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018090220180818
2336508864refgcc -m64 -march=core2 -O -fomit-frame-pointer2018090220180818
2338737664refgcc -m64 -march=corei7 -O -fomit-frame-pointer2018090220180818
2342993728refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018090220180818
2349377888refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018090220180818
2351775488refgcc -m64 -O -fomit-frame-pointer2018090220180818
2352692288refgcc -fno-schedule-insns -O -fomit-frame-pointer2018090220180818
2352929920refgcc -O -fomit-frame-pointer2018090220180818
3688242048refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018090220180818
3690131392refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018090220180818
3691698560refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018090220180818
3695859392refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018090220180818
3700331648refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018090220180818
3701728448refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018090220180818
3703687712refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018090220180818
3705158272refgcc -m64 -march=core2 -Os -fomit-frame-pointer2018090220180818
3713352000refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018090220180818
3714484416refgcc -march=k8 -Os -fomit-frame-pointer2018090220180818
3715394176refgcc -m64 -march=k8 -Os -fomit-frame-pointer2018090220180818
3717572160refgcc -fno-schedule-insns -Os -fomit-frame-pointer2018090220180818
3722892416refgcc -Os -fomit-frame-pointer2018090220180818
3723030624refgcc -m64 -Os -fomit-frame-pointer2018090220180818
3723777664refgcc -march=barcelona -Os -fomit-frame-pointer2018090220180818
3725094848refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018090220180818
3752940064refgcc -march=nocona -Os -fomit-frame-pointer2018090220180818
3765187040refgcc -m64 -march=nocona -Os -fomit-frame-pointer2018090220180818
7017655680refgcc -funroll-loops2018090220180818
7026298912refgcc2018090220180818
7224963616refcc2018090220180818

Test failure

Implementation: crypto_sign/sphincsf128haraka/aesni
Compiler: gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer aesni
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer aesni
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer aesni
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv aesni

Compiler output

Implementation: crypto_sign/sphincsf128haraka/aesni
Compiler: cc
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: haraka.c: In function 'haraka512_perm':
haraka.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
haraka.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
haraka.c: ^
haraka.c: haraka.c:42:8: error: called from here
haraka.c: s3 = _mm_aesenc_si128(s3, *(rci + 7));
haraka.c: ^
haraka.c: haraka.c:363:5: note: in expansion of macro 'AES4'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc + 32);
haraka.c: ^
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
haraka.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
haraka.c: ^
haraka.c: haraka.c:41:8: error: called from here
haraka.c: s2 = _mm_aesenc_si128(s2, *(rci + 6)); \
haraka.c: ^
haraka.c: haraka.c:363:5: note: in expansion of macro 'AES4'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc + 32);
haraka.c: ^
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: ...

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

Compiler output

Implementation: crypto_sign/sphincsf128haraka/aesni
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
haraka.c: haraka.c:351:5: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'haraka512_perm' that is compiled without support for 'aes'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc);
haraka.c: ^
haraka.c: haraka.c:35:8: note: expanded from macro 'AES4'
haraka.c: s0 = _mm_aesenc_si128(s0, *(rci)); \
haraka.c: ^
haraka.c: haraka.c:351:5: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'haraka512_perm' that is compiled without support for 'aes'
haraka.c: haraka.c:36:8: note: expanded from macro 'AES4'
haraka.c: s1 = _mm_aesenc_si128(s1, *(rci + 1)); \
haraka.c: ^
haraka.c: haraka.c:351:5: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'haraka512_perm' that is compiled without support for 'aes'
haraka.c: haraka.c:37:8: note: expanded from macro 'AES4'
haraka.c: s2 = _mm_aesenc_si128(s2, *(rci + 2)); \
haraka.c: ^
haraka.c: haraka.c:351:5: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'haraka512_perm' that is compiled without support for 'aes'
haraka.c: haraka.c:38:8: note: expanded from macro 'AES4'
haraka.c: s3 = _mm_aesenc_si128(s3, *(rci + 3)); \
haraka.c: ^
haraka.c: haraka.c:351:5: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'haraka512_perm' that is compiled without support for 'aes'
haraka.c: haraka.c:39:8: note: expanded from macro 'AES4'
haraka.c: s0 = _mm_aesenc_si128(s0, *(rci + 4)); \
haraka.c: ^
haraka.c: haraka.c:351:5: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'haraka512_perm' that is compiled without support for 'aes'
haraka.c: haraka.c:40:8: note: expanded from macro 'AES4'
haraka.c: s1 = _mm_aesenc_si128(s1, *(rci + 5)); \
haraka.c: ...

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

Compiler output

Implementation: crypto_sign/sphincsf128haraka/aesni
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: haraka.c: In function 'haraka512_perm':
haraka.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
haraka.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
haraka.c: ^
haraka.c: haraka.c:42:8: error: called from here
haraka.c: s3 = _mm_aesenc_si128(s3, *(rci + 7));
haraka.c: ^
haraka.c: haraka.c:363:5: note: in expansion of macro 'AES4'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc + 32);
haraka.c: ^
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
haraka.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
haraka.c: ^
haraka.c: haraka.c:41:8: error: called from here
haraka.c: s2 = _mm_aesenc_si128(s2, *(rci + 6)); \
haraka.c: ^
haraka.c: haraka.c:363:5: note: in expansion of macro 'AES4'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc + 32);
haraka.c: ^
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: ...
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: haraka.c: In function 'haraka512_perm':
haraka.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
haraka.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
haraka.c: ^
haraka.c: haraka.c:42:8: error: called from here
haraka.c: s3 = _mm_aesenc_si128(s3, *(rci + 7));
haraka.c: ^
haraka.c: haraka.c:363:5: note: in expansion of macro 'AES4'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc + 32);
haraka.c: ^
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:61:1: error: inlining failed in call to always_inline '_mm_aesenc_si128': target specific option mismatch
haraka.c: _mm_aesenc_si128 (__m128i __X, __m128i __Y)
haraka.c: ^
haraka.c: haraka.c:41:8: error: called from here
haraka.c: s2 = _mm_aesenc_si128(s2, *(rci + 6)); \
haraka.c: ^
haraka.c: haraka.c:363:5: note: in expansion of macro 'AES4'
haraka.c: AES4(s[0], s[1], s[2], s[3], rc + 32);
haraka.c: ^
haraka.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:39:0,
haraka.c: from haraka.c:10:
haraka.c: ...

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