Implementation notes: x86, titan0, crypto_aead/morus640128v2

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_aead
Primitive: morus640128v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
10664sse2gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
10700sse2gcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
10704sse2gcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
10732sse2gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
10780sse2gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
10784sse2gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
11080sse2gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
11084sse2gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
11104sse2gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
11112sse2gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
11132sse2gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
11148sse2gcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
11148sse2gcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
11176sse2gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
11180sse2gcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
11180sse2gcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
11192sse2gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
11200sse2gcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
11252sse2gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
11284sse2gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
11304sse2gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
11328sse2gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
11404sse2gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
11416sse2gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
11440sse2gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
11464sse2gcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
11464sse2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
11472sse2gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
11484sse2gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
11516sse2gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
11552sse2gcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
11580sse2gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
11588sse2gcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
11612sse2gcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
11616sse2gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
11640sse2gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
11648sse2gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
11652sse2gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
11692sse2gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
11772sse2gcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
11796sse2gcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
11812sse2gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
11820sse2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
11856sse2gcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
11896sse2gcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
11920sse2gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
11944sse2gcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
11944sse2gcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
11948sse2gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
11960sse2gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
11980sse2gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
11984sse2gcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
11988sse2gcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
11988sse2gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
12004sse2gcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
12004sse2gcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
12028sse2gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
12112sse2gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
12252sse2gcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
12432sse2gcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
25892refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019070720190110
25944refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
25956refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
26048refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
26148refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
26152refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
26160refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
26200refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
26212refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
26236refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
26240refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
26264refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
26264refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
26348refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
26364refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
26452refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
26480refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
26616refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
26632refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
26644refgcc -m32 -O3 -fomit-frame-pointer2019070720190110
26648refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
26688refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
26692refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
26712refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
26716refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
26716refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
26720refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
26728refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
26732refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
26752refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
26776refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
26784refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
26796refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
26816refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
26824refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
26824refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
26828refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
26860refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
26864refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
26872refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
26904refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
26904refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
26908refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
26920refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019070720190110
26928refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
26936refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
27004refgcc -m32 -O2 -fomit-frame-pointer2019070720190110
27048refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
27076refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
27080refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
27096refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
27124refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
27136refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
27184refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
27216refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
27244refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
27276refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
27284refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
27292refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
27300refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
27320refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
27336refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
27372refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
27384refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
27400refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
27404refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
27404refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
27456refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
27472refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
27476refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
27496refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
27500refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
27504refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
27516refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
27592refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
27628refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
27644refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019070720190110
27672refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
27728refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
27740refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
27740refgcc -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
27748refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
27756refgcc -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
27808refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
27812refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
27816refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
27824refgcc -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
27884refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
27884refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
27884refgcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
27896refgcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
27924refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
27928refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
27940refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
27944refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
27960refgcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
27960refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
27976refgcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
27996refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
28000refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
28020refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
28056refgcc -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
28228refgcc -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
28236refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
28260refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
28260refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
28388refgcc -m32 -O -fomit-frame-pointer2019070720190110
28488refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
28600refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
28600refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
28640refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
28848refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
28884refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
29148refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
29172refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
29180refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
29204refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
29208refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
29280refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
29296refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
29340refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
29444refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
29584refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
29608refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
29664refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
29680refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
29680refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
29684refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
29696refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
29724refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
30236refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
30300refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110

Test failure

Implementation: crypto_aead/morus640128v2/sse2
Compiler: gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer sse2
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer sse2
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer sse2
gcc -m32 -march=core2 -Os -fomit-frame-pointer sse2
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse2
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer sse2
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer sse2
gcc -m32 -march=corei7 -Os -fomit-frame-pointer sse2
gcc -m32 -march=k8 -Os -fomit-frame-pointer sse2
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer sse2
gcc -m32 -march=nocona -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer sse2
gcc -m32 -march=prescott -Os -fomit-frame-pointer sse2

Test failure

Implementation: crypto_aead/morus640128v2/sse2
Compiler: gcc -m32 -march=barcelona -Os -fomit-frame-pointer
error 111
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m32 -march=barcelona -Os -fomit-frame-pointer sse2

Compiler output

Implementation: crypto_aead/morus640128v2/sse2
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'morus_stateupdate':
encrypt.c: encrypt.c:39:11: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
encrypt.c: state[0] = XOR(state[0], state[3]);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
encrypt.c: from encrypt.c:2:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1420:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
encrypt.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:28:24: note: called from here
encrypt.c: #define ROTL32(x) _mm_shuffle_epi32((x),_MM_SHUFFLE(2,1,0,3)) /*Rotate x by 32-bit positions to the left*/
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:66:13: note: in expansion of macro 'ROTL32'
encrypt.c: state[2] = ROTL32(state[2]);
encrypt.c: ^~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
encrypt.c: from encrypt.c:2:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1291:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
encrypt.c: _mm_xor_si128 (__m128i __A, __m128i __B)
encrypt.c: ^~~~~~~~~~~~~
encrypt.c: encrypt.c:18:24: note: called from here
encrypt.c: #define XOR(x,y) _mm_xor_si128((x),(y)) /*XOR(x,y) = x ^ y, where x and y are two 128-bit word*/
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 88, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer sse2
gcc -m32 -O2 -fomit-frame-pointer sse2
gcc -m32 -O3 -fomit-frame-pointer sse2
gcc -m32 -O -fomit-frame-pointer sse2
gcc -m32 -Os -fomit-frame-pointer sse2
gcc -m32 -march=athlon -O2 -fomit-frame-pointer sse2
gcc -m32 -march=athlon -O3 -fomit-frame-pointer sse2
gcc -m32 -march=athlon -O -fomit-frame-pointer sse2
gcc -m32 -march=athlon -Os -fomit-frame-pointer sse2
gcc -m32 -march=i386 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=i386 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=i386 -O -fomit-frame-pointer sse2
gcc -m32 -march=i386 -Os -fomit-frame-pointer sse2
gcc -m32 -march=i486 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=i486 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=i486 -O -fomit-frame-pointer sse2
gcc -m32 -march=i486 -Os -fomit-frame-pointer sse2
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=k6-2 -O -fomit-frame-pointer sse2
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer sse2
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=k6-3 -O -fomit-frame-pointer sse2
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer sse2
gcc -m32 -march=k6 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=k6 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=k6 -O -fomit-frame-pointer sse2
gcc -m32 -march=k6 -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer sse2
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer sse2
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer sse2
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=pentium2 -O -fomit-frame-pointer sse2
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentium -O2 -fomit-frame-pointer sse2
gcc -m32 -march=pentium -O3 -fomit-frame-pointer sse2
gcc -m32 -march=pentium -O -fomit-frame-pointer sse2
gcc -m32 -march=pentium -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer sse2
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer sse2
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer sse2
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer sse2

Compiler output

Implementation: crypto_aead/morus640128v2/ref
Compiler: gcc -funroll-loops -m32 -Os -fomit-frame-pointer
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `crypto_aead_morus640128v2_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `crypto_aead_morus640128v2_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 43, namely:
CompilerImplementations
gcc -funroll-loops -m32 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer ref
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer ref
gcc -m32 -Os -fomit-frame-pointer ref
gcc -m32 -march=athlon -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m32 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m32 -march=i386 -Os -fomit-frame-pointer ref
gcc -m32 -march=i486 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer ref
gcc -m32 -march=k6 -Os -fomit-frame-pointer ref
gcc -m32 -march=k8 -Os -fomit-frame-pointer ref
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m32 -march=nocona -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer ref
gcc -m32 -march=pentium -Os -fomit-frame-pointer ref
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer ref
gcc -m32 -march=prescott -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_aead/morus640128v2/sse2
Compiler: gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
encrypt.c: from encrypt.c:2:
encrypt.c: encrypt.c: In function 'morus_stateupdate':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1420:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
encrypt.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
encrypt.c: ^~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:28:24: note: called from here
encrypt.c: #define ROTL32(x) _mm_shuffle_epi32((x),_MM_SHUFFLE(2,1,0,3)) /*Rotate x by 32-bit positions to the left*/
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:66:13: note: in expansion of macro 'ROTL32'
encrypt.c: state[2] = ROTL32(state[2]);
encrypt.c: ^~~~~~
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
encrypt.c: from encrypt.c:2:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/7/include/emmintrin.h:1291:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
encrypt.c: _mm_xor_si128 (__m128i __A, __m128i __B)
encrypt.c: ^~~~~~~~~~~~~
encrypt.c: encrypt.c:18:24: note: called from here
encrypt.c: #define XOR(x,y) _mm_xor_si128((x),(y)) /*XOR(x,y) = x ^ y, where x and y are two 128-bit word*/
encrypt.c: ^~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:25:24: note: in expansion of macro 'XOR'
encrypt.c: #define ROTL(x,n) XOR(_mm_slli_epi32((x), (n)), _mm_srli_epi32((x),(32-n))) /*Rotate 4 32-bit unsigned integers in x to the left by n-bit positions*/
encrypt.c: ^~~
encrypt.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer sse2
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer sse2
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer sse2
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer sse2
gcc -m32 -march=pentium3 -O -fomit-frame-pointer sse2
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer sse2

Compiler output

Implementation: crypto_aead/morus640128v2/ref
Compiler: gcc -m32 -march=barcelona -Os -fomit-frame-pointer
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `crypto_aead_morus640128v2_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `crypto_aead_morus640128v2_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `crypto_aead_morus640128v2_ref_encrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: crypto_aead_morus640128v2.a(encrypt.o): In function `crypto_aead_morus640128v2_ref_decrypt':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_enc_aut_step'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_dec_aut_step'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m32 -march=barcelona -Os -fomit-frame-pointer ref