Implementation notes: x86, titan0, crypto_aead/morus640128v1

Computer: titan0
Architecture: x86
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20190803
Operation: crypto_aead
Primitive: morus640128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
10624sse2gcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
10624sse2gcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
10628sse2gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
10696sse2gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
10760sse2gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
10820sse2gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
11004sse2gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
11024sse2gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
11040sse2gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
11064sse2gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
11064sse2gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
11080sse2gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
11088sse2gcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
11096sse2gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
11100sse2gcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
11104sse2gcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
11116sse2gcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
11124sse2gcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
11208sse2gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
11212sse2gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
11224sse2gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
11244sse2gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
11248sse2gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
11276sse2gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
11348sse2gcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
11376sse2gcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
11376sse2gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
11384sse2gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
11400sse2gcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
11412sse2gcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
11420sse2gcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
11448sse2gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
11456sse2gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
11476sse2gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
11480sse2gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
11536sse2gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
11544sse2gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
11560sse2gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
11600sse2gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
11668sse2gcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
11688sse2gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
11688sse2gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
11716sse2gcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
11760sse2gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
11788sse2gcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
11812sse2gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
11824sse2gcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
11836sse2gcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
11872sse2gcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
11888sse2gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
11896sse2gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
11896sse2gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
11900sse2gcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
11900sse2gcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
11912sse2gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
11924sse2gcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
11928sse2gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
11940sse2gcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
11988sse2gcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
12240sse2gcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
26188refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2019070720190110
26208refgcc -m32 -march=core-avx2 -O3 -fomit-frame-pointer2019070720190110
26232refgcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer2019070720190110
26264refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2019070720190110
26304refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2019070720190110
26324refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
26356refgcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2019070720190110
26384refgcc -m32 -O2 -fomit-frame-pointer2019070720190110
26404refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
26432refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
26432refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
26444refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
26464refgcc -m32 -march=corei7 -O3 -fomit-frame-pointer2019070720190110
26464refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2019070720190110
26484refgcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2019070720190110
26528refgcc -m32 -O3 -fomit-frame-pointer2019070720190110
26596refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
26612refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2019070720190110
26620refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
26636refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
26652refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
26656refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2019070720190110
26676refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
26696refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
26712refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2019070720190110
26720refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2019070720190110
26724refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2019070720190110
26736refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2019070720190110
26748refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2019070720190110
26760refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
26764refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2019070720190110
26764refgcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2019070720190110
26792refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2019070720190110
26824refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
26824refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2019070720190110
26828refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2019070720190110
26840refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
26844refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2019070720190110
26852refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
26856refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2019070720190110
26864refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2019070720190110
26900refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2019070720190110
26928refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
26956refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2019070720190110
26964refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2019070720190110
26972refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
26984refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
27008refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2019070720190110
27024refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
27040refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
27048refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2019070720190110
27064refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
27096refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
27104refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2019070720190110
27136refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2019070720190110
27160refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2019070720190110
27164refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2019070720190110
27176refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2019070720190110
27196refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
27200refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
27268refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
27288refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
27300refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
27312refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
27316refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
27324refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2019070720190110
27328refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
27348refgcc -m32 -march=i386 -O -fomit-frame-pointer2019070720190110
27368refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2019070720190110
27380refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
27412refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2019070720190110
27452refgcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2019070720190110
27456refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
27488refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2019070720190110
27496refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
27496refgcc -m32 -march=pentium -O -fomit-frame-pointer2019070720190110
27500refgcc -funroll-loops -m32 -O -fomit-frame-pointer2019070720190110
27500refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2019070720190110
27500refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2019070720190110
27512refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2019070720190110
27516refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2019070720190110
27540refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
27556refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
27568refgcc -m32 -march=core-avx2 -O -fomit-frame-pointer2019070720190110
27584refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
27604refgcc -m32 -march=i486 -O -fomit-frame-pointer2019070720190110
27620refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
27680refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
27684refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2019070720190110
27688refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
27708refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2019070720190110
27712refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2019070720190110
27716refgcc -m32 -march=prescott -O -fomit-frame-pointer2019070720190110
27748refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2019070720190110
27752refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2019070720190110
27780refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2019070720190110
27784refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2019070720190110
27788refgcc -m32 -march=corei7 -O -fomit-frame-pointer2019070720190110
27828refgcc -m32 -march=nocona -O -fomit-frame-pointer2019070720190110
28040refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2019070720190110
28040refgcc -m32 -march=k6 -O -fomit-frame-pointer2019070720190110
28048refgcc -m32 -march=athlon -O -fomit-frame-pointer2019070720190110
28052refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2019070720190110
28080refgcc -m32 -march=core2 -O -fomit-frame-pointer2019070720190110
28128refgcc -m32 -O -fomit-frame-pointer2019070720190110
28200refgcc -m32 -march=k8 -O -fomit-frame-pointer2019070720190110
28348refgcc -m32 -march=barcelona -O -fomit-frame-pointer2019070720190110
28556refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
28632refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
28656refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
28708refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
28808refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
28848refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
28856refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
28868refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
28960refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
28960refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110
29084refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
29104refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
29404refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2019070720190110
29468refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2019070720190110
29472refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2019070720190110
29484refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2019070720190110
29512refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2019070720190110
29512refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2019070720190110
29560refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2019070720190110
29612refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2019070720190110
29928refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2019070720190110
30000refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2019070720190110
30152refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2019070720190110
30244refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2019070720190110
30268refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2019070720190110

Test failure

Implementation: crypto_aead/morus640128v1/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/morus640128v1/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/morus640128v1/sse2
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
morus640128v1sse2.c: morus640128v1sse2.c: In function 'morus_stateupdate':
morus640128v1sse2.c: morus640128v1sse2.c:39:18: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
morus640128v1sse2.c: state[0] = XOR(state[0], state[3]);
morus640128v1sse2.c: ^
morus640128v1sse2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
morus640128v1sse2.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
morus640128v1sse2.c: from morus640128v1sse2.c:2:
morus640128v1sse2.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
morus640128v1sse2.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
morus640128v1sse2.c: ^~~~~~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:28:24: note: called from here
morus640128v1sse2.c: #define ROTL32(x) _mm_shuffle_epi32((x),_MM_SHUFFLE(2,1,0,3)) /*Rotate x by 32-bit positions to the left*/
morus640128v1sse2.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:66:20: note: in expansion of macro 'ROTL32'
morus640128v1sse2.c: state[2] = ROTL32(state[2]);
morus640128v1sse2.c: ^~~~~~
morus640128v1sse2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
morus640128v1sse2.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
morus640128v1sse2.c: from morus640128v1sse2.c:2:
morus640128v1sse2.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
morus640128v1sse2.c: _mm_xor_si128 (__m128i __A, __m128i __B)
morus640128v1sse2.c: ^~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:18:24: note: called from here
morus640128v1sse2.c: #define XOR(x,y) _mm_xor_si128((x),(y)) /*XOR(x,y) = x ^ y, where x and y are two 128-bit word*/
morus640128v1sse2.c: ^~~~~~~~~~~~~~~~~~~~~~
morus640128v1sse2.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/morus640128v1/ref
Compiler: gcc -funroll-loops -m32 -Os -fomit-frame-pointer
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `crypto_aead_morus640128v1_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_morus640128v1.a(encrypt.o): In function `crypto_aead_morus640128v1_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/morus640128v1/sse2
Compiler: gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer
morus640128v1sse2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
morus640128v1sse2.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
morus640128v1sse2.c: from morus640128v1sse2.c:2:
morus640128v1sse2.c: morus640128v1sse2.c: In function 'morus_stateupdate':
morus640128v1sse2.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
morus640128v1sse2.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
morus640128v1sse2.c: ^~~~~~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:28:24: note: called from here
morus640128v1sse2.c: #define ROTL32(x) _mm_shuffle_epi32((x),_MM_SHUFFLE(2,1,0,3)) /*Rotate x by 32-bit positions to the left*/
morus640128v1sse2.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:66:20: note: in expansion of macro 'ROTL32'
morus640128v1sse2.c: state[2] = ROTL32(state[2]);
morus640128v1sse2.c: ^~~~~~
morus640128v1sse2.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/7/include/xmmintrin.h:1252:0,
morus640128v1sse2.c: from /usr/lib/gcc/x86_64-linux-gnu/7/include/immintrin.h:29,
morus640128v1sse2.c: from morus640128v1sse2.c:2:
morus640128v1sse2.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
morus640128v1sse2.c: _mm_xor_si128 (__m128i __A, __m128i __B)
morus640128v1sse2.c: ^~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:18:24: note: called from here
morus640128v1sse2.c: #define XOR(x,y) _mm_xor_si128((x),(y)) /*XOR(x,y) = x ^ y, where x and y are two 128-bit word*/
morus640128v1sse2.c: ^~~~~~~~~~~~~~~~~~~~~~
morus640128v1sse2.c: morus640128v1sse2.c:25:24: note: in expansion of macro 'XOR'
morus640128v1sse2.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*/
morus640128v1sse2.c: ^~~
morus640128v1sse2.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/morus640128v1/ref
Compiler: gcc -m32 -march=barcelona -Os -fomit-frame-pointer
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `crypto_aead_morus640128v1_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_morus640128v1.a(encrypt.o): In function `crypto_aead_morus640128v1_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_morus640128v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `crypto_aead_morus640128v1_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_morus640128v1.a(encrypt.o): In function `crypto_aead_morus640128v1_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