Implementation notes: x86, h2atom, crypto_aead/kiasuneq128v1

Computer: h2atom
Architecture: x86
CPU ID: GenuineIntel-000106ca-bfe9fbff
SUPERCOP version: 20161009
Operation: crypto_aead
Primitive: kiasuneq128v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
603600refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2016111420161009
609620refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2016111420161009
610520refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2016111420161009
612900refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2016111420161009
612940refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2016111420161009
614770refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2016111420161009
617650refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2016111420161009
621050refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2016111420161009
621930refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2016111420161009
628040refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2016111420161009
628110refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2016111420161009
628390refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2016111420161009
635470refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2016111420161009
635640refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2016111420161009
641950refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2016111420161009
642020refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2016111420161009
642210refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2016111420161009
649500refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2016111420161009
652830refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2016111420161009
652900refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2016111420161009
659990refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2016111420161009
660080refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2016111420161009
661050refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2016111420161009
661090refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2016111420161009
661410refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2016111420161009
661420refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2016111420161009
676790refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2016111420161009
680650refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2016111420161009
682670refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2016111420161009
682680refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2016111420161009
682720refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2016111420161009
682750refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2016111420161009
682830refgcc -m32 -march=pentium -Os -fomit-frame-pointer2016111420161009
684840refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2016111420161009
685770refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2016111420161009
689830refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2016111420161009
690760refgcc -m32 -O3 -fomit-frame-pointer2016111420161009
690910refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2016111420161009
691120refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2016111420161009
691130refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2016111420161009
701600refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2016111420161009
701600refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2016111420161009
705020refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2016111420161009
705120refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2016111420161009
705210refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2016111420161009
705310refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2016111420161009
710130refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2016111420161009
710150refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2016111420161009
711770refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016111420161009
711850refgcc -m32 -march=core2 -Os -fomit-frame-pointer2016111420161009
711880refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2016111420161009
711960refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2016111420161009
712250refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2016111420161009
712360refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2016111420161009
713770refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2016111420161009
714000refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2016111420161009
714160refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2016111420161009
715940refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2016111420161009
716680refgcc -m32 -march=k6 -Os -fomit-frame-pointer2016111420161009
716720refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2016111420161009
716750refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2016111420161009
721090refgcc -m32 -march=k8 -Os -fomit-frame-pointer2016111420161009
721580refgcc -m32 -Os -fomit-frame-pointer2016111420161009
721610refgcc -m32 -march=athlon -Os -fomit-frame-pointer2016111420161009
722240refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2016111420161009
729260refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2016111420161009
732460refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2016111420161009
732530refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2016111420161009
732580refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2016111420161009
732610refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2016111420161009
737490refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2016111420161009
737720refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2016111420161009
739390refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2016111420161009
739420refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2016111420161009
746060refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2016111420161009
746610refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2016111420161009
746720refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2016111420161009
747110refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2016111420161009
748040refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2016111420161009
757370refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2016111420161009
758260refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2016111420161009
760190refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2016111420161009
760250refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2016111420161009
760430refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2016111420161009
763930refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2016111420161009
763950refgcc -m32 -O2 -fomit-frame-pointer2016111420161009
764100refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2016111420161009
764150refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2016111420161009
764910refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2016111420161009
764910refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2016111420161009
765330refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2016111420161009
765420refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2016111420161009
765650refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2016111420161009
765840refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2016111420161009
766670refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2016111420161009
766720refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2016111420161009
766720refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2016111420161009
767030refgcc -funroll-loops -m32 -O -fomit-frame-pointer2016111420161009
767270refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2016111420161009
767300refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2016111420161009
767410refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2016111420161009
767510refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016111420161009
767550refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2016111420161009
768110refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2016111420161009
768140refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2016111420161009
771520refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2016111420161009
773370refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2016111420161009
773450refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2016111420161009
773700refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2016111420161009
776660refgcc -m32 -march=k8 -O -fomit-frame-pointer2016111420161009
777130refgcc -m32 -march=barcelona -O -fomit-frame-pointer2016111420161009
777210refgcc -m32 -march=prescott -O -fomit-frame-pointer2016111420161009
777440refgcc -m32 -march=nocona -O -fomit-frame-pointer2016111420161009
778000refgcc -m32 -march=athlon -O -fomit-frame-pointer2016111420161009
778530refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2016111420161009
778560refgcc -m32 -march=i386 -O -fomit-frame-pointer2016111420161009
778590refgcc -m32 -march=corei7 -O -fomit-frame-pointer2016111420161009
778610refgcc -m32 -march=core2 -O -fomit-frame-pointer2016111420161009
778620refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2016111420161009
779230refgcc -m32 -O -fomit-frame-pointer2016111420161009
780510refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2016111420161009
780510refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2016111420161009
780600refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2016111420161009
781070refgcc -m32 -march=k6 -O -fomit-frame-pointer2016111420161009
781090refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2016111420161009
781110refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2016111420161009
781370refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2016111420161009
781390refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2016111420161009
782080refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2016111420161009
782110refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2016111420161009
782230refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2016111420161009
782310refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2016111420161009
782330refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2016111420161009
783990refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2016111420161009
786860refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2016111420161009
787020refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2016111420161009
787440refgcc -m32 -march=prescott -Os -fomit-frame-pointer2016111420161009
787470refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2016111420161009
787540refgcc -m32 -march=nocona -Os -fomit-frame-pointer2016111420161009
787620refgcc -m32 -march=i386 -Os -fomit-frame-pointer2016111420161009
787650refgcc -m32 -march=i486 -Os -fomit-frame-pointer2016111420161009
796260refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2016111420161009
796280refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2016111420161009
796380refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2016111420161009
796680refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2016111420161009
798830refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2016111420161009
798920refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2016111420161009
799790refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2016111420161009
807510refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2016111420161009
807540refgcc -m32 -march=pentium -O -fomit-frame-pointer2016111420161009
808180refgcc -m32 -march=i486 -O -fomit-frame-pointer2016111420161009
809560refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2016111420161009
822020refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2016111420161009
822810refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2016111420161009
822880refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2016111420161009
822970refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2016111420161009
823180refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2016111420161009
823940refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2016111420161009
824400refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2016111420161009
824440refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2016111420161009
872740refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2016111420161009

Test failure

Implementation: crypto_aead/kiasuneq128v1/opt
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer opt ref
gcc -m32 -march=core-avx-i -O -fomit-frame-pointer opt ref
gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer opt ref
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer opt ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer opt ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer opt ref
gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer opt ref
gcc -m32 -march=corei7-avx -O -fomit-frame-pointer opt ref
gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer opt ref

Compiler output

Implementation: crypto_aead/kiasuneq128v1/opt
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
kiasu.c: kiasu.c: In function 'assist128':
kiasu.c: kiasu.c:36:1: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi]
kiasu.c: {
kiasu.c: ^
kiasu.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
kiasu.c: from kiasu.c:26:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1286:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
kiasu.c: _mm_xor_si128 (__m128i __A, __m128i __B)
kiasu.c: ^
kiasu.c: kiasu.c:41:12: error: called from here
kiasu.c: return _mm_xor_si128 (a, _mm_shuffle_epi32 (b ,0xff));
kiasu.c: ^
kiasu.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
kiasu.c: from kiasu.c:26:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1415:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
kiasu.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
kiasu.c: ^
kiasu.c: kiasu.c:41:12: error: called from here
kiasu.c: return _mm_xor_si128 (a, _mm_shuffle_epi32 (b ,0xff));
kiasu.c: ^
kiasu.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
kiasu.c: from kiasu.c:26:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1286:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
kiasu.c: _mm_xor_si128 (__m128i __A, __m128i __B)
kiasu.c: ^
kiasu.c: ...

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

Compiler output

Implementation: crypto_aead/kiasuneq128v1/bitslice
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
kiasu.c: kiasu.c: In function 'kiasu_aead_encrypt':
kiasu.c: kiasu.c:256:13: error: unknown type name 'block'
kiasu.c: ALIGN(16) block Auth; /* Auth value during the mode */
kiasu.c: ^
kiasu.c: kiasu.c:257:13: error: unknown type name 'block'
kiasu.c: ALIGN(16) block Checksum; /* Checksum on the plaintext blocks */
kiasu.c: ^
kiasu.c: kiasu.c:258:13: error: unknown type name 'block'
kiasu.c: ALIGN(16) block PaddedBlock; /* Padded blocks if needed, otherwise the zero bock */
kiasu.c: ^
kiasu.c: kiasu.c:259:13: error: unknown type name 'block'
kiasu.c: ALIGN(16) block ta[BPI]; /* 8 blocks for parallel processing */
kiasu.c: ^
kiasu.c: kiasu.c:260:19: error: unknown type name 'block'
kiasu.c: ALIGN(16) const block* adp; /* Pointer to the blocks to process */
kiasu.c: ^
kiasu.c: kiasu.c:262:13: error: unknown type name '__m128i'
kiasu.c: ALIGN(16) __m128i tmpblock;
kiasu.c: ^
kiasu.c: kiasu.c:271:10: error: 'block' undeclared (first use in this function)
kiasu.c: adp = (block *)ad;
kiasu.c: ^
kiasu.c: kiasu.c:271:10: note: each undeclared identifier is reported only once for each function it appears in
kiasu.c: kiasu.c:271:17: error: expected expression before ')' token
kiasu.c: adp = (block *)ad;
kiasu.c: ...

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

Compiler output

Implementation: crypto_aead/kiasuneq128v1/bitslice
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
aes_tweaked.s: aes_tweaked.s: Assembler messages:
aes_tweaked.s: aes_tweaked.s:29: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:30: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:31: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:32: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:33: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:34: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:35: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:36: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: ...

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

Compiler output

Implementation: crypto_aead/kiasuneq128v1/opt
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: kiasu.c: In function 'set_encryption_key':
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:55:19: error: called from here
kiasu.c: subkeys[10] = assist128(subkeys[9], _mm_aeskeygenassist_si128(subkeys[9],0x36));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:54:19: error: called from here
kiasu.c: subkeys[ 9] = assist128(subkeys[8], _mm_aeskeygenassist_si128(subkeys[8],0x1b));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:53:19: error: called from here
kiasu.c: subkeys[ 8] = assist128(subkeys[7], _mm_aeskeygenassist_si128(subkeys[7],0x80));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ...

Number of similar (compiler,implementation) pairs: 61, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer opt
gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer opt
gcc -m32 -march=core2 -O2 -fomit-frame-pointer opt
gcc -m32 -march=core2 -O3 -fomit-frame-pointer opt
gcc -m32 -march=core2 -O -fomit-frame-pointer opt
gcc -m32 -march=core2 -Os -fomit-frame-pointer opt
gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer opt
gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer opt
gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer opt
gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer opt
gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer opt
gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer opt
gcc -m32 -march=corei7 -O2 -fomit-frame-pointer opt
gcc -m32 -march=corei7 -O -fomit-frame-pointer opt
gcc -m32 -march=corei7 -Os -fomit-frame-pointer opt
gcc -m32 -march=k8 -O2 -fomit-frame-pointer opt
gcc -m32 -march=k8 -O3 -fomit-frame-pointer opt
gcc -m32 -march=k8 -O -fomit-frame-pointer opt
gcc -m32 -march=k8 -Os -fomit-frame-pointer opt
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer opt
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer opt
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer opt
gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer opt
gcc -m32 -march=nocona -O2 -fomit-frame-pointer opt
gcc -m32 -march=nocona -O3 -fomit-frame-pointer opt
gcc -m32 -march=nocona -O -fomit-frame-pointer opt
gcc -m32 -march=nocona -Os -fomit-frame-pointer opt
gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer opt
gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer opt
gcc -m32 -march=pentium-m -O -fomit-frame-pointer opt
gcc -m32 -march=pentium-m -Os -fomit-frame-pointer opt
gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer opt
gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer opt
gcc -m32 -march=pentium4 -O -fomit-frame-pointer opt
gcc -m32 -march=pentium4 -Os -fomit-frame-pointer opt
gcc -m32 -march=prescott -O2 -fomit-frame-pointer opt
gcc -m32 -march=prescott -O3 -fomit-frame-pointer opt
gcc -m32 -march=prescott -O -fomit-frame-pointer opt
gcc -m32 -march=prescott -Os -fomit-frame-pointer opt

Compiler output

Implementation: crypto_aead/kiasuneq128v1/opt
Compiler: gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer
kiasu.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
kiasu.c: from kiasu.c:26:
kiasu.c: kiasu.c: In function 'assist128':
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1286:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
kiasu.c: _mm_xor_si128 (__m128i __A, __m128i __B)
kiasu.c: ^
kiasu.c: kiasu.c:41:12: error: called from here
kiasu.c: return _mm_xor_si128 (a, _mm_shuffle_epi32 (b ,0xff));
kiasu.c: ^
kiasu.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
kiasu.c: from kiasu.c:26:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1415:1: error: inlining failed in call to always_inline '_mm_shuffle_epi32': target specific option mismatch
kiasu.c: _mm_shuffle_epi32 (__m128i __A, const int __mask)
kiasu.c: ^
kiasu.c: kiasu.c:41:12: error: called from here
kiasu.c: return _mm_xor_si128 (a, _mm_shuffle_epi32 (b ,0xff));
kiasu.c: ^
kiasu.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/xmmintrin.h:1249:0,
kiasu.c: from kiasu.c:26:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/emmintrin.h:1286:1: error: inlining failed in call to always_inline '_mm_xor_si128': target specific option mismatch
kiasu.c: _mm_xor_si128 (__m128i __A, __m128i __B)
kiasu.c: ^
kiasu.c: kiasu.c:40:7: error: called from here
kiasu.c: a = _mm_xor_si128 (_mm_xor_si128 (a, tmp), _mm_slli_si128 (tmp, 0x04));
kiasu.c: ^
kiasu.c: ...

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

Compiler output

Implementation: crypto_aead/kiasuneq128v1/bitslice
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
aes_tweaked.s: aes_tweaked.s: Assembler messages:
aes_tweaked.s: aes_tweaked.s:29: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:30: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:31: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:32: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:33: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:34: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:35: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:36: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: ...
aes_tweaked.s: aes_tweaked.s: Assembler messages:
aes_tweaked.s: aes_tweaked.s:29: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:30: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:31: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:32: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:33: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:34: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:35: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:36: Error: bad register name `%rsi)'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: aes_tweaked.s:47: Error: bad register name `%xmm8'
aes_tweaked.s: ...

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

Compiler output

Implementation: crypto_aead/kiasuneq128v1/opt
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: kiasu.c: In function 'set_encryption_key':
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:55:19: error: called from here
kiasu.c: subkeys[10] = assist128(subkeys[9], _mm_aeskeygenassist_si128(subkeys[9],0x36));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:54:19: error: called from here
kiasu.c: subkeys[ 9] = assist128(subkeys[8], _mm_aeskeygenassist_si128(subkeys[8],0x1b));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:53:19: error: called from here
kiasu.c: subkeys[ 8] = assist128(subkeys[7], _mm_aeskeygenassist_si128(subkeys[7],0x80));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ...
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: kiasu.c: In function 'set_encryption_key':
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:55:19: error: called from here
kiasu.c: subkeys[10] = assist128(subkeys[9], _mm_aeskeygenassist_si128(subkeys[9],0x36));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:54:19: error: called from here
kiasu.c: subkeys[ 9] = assist128(subkeys[8], _mm_aeskeygenassist_si128(subkeys[8],0x1b));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ^
kiasu.c: kiasu.c:53:19: error: called from here
kiasu.c: subkeys[ 8] = assist128(subkeys[7], _mm_aeskeygenassist_si128(subkeys[7],0x80));
kiasu.c: ^
kiasu.c: In file included from kiasu.c:28:0:
kiasu.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
kiasu.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
kiasu.c: ...

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