Implementation notes: x86, rumba5, crypto_kem/titaniumccasuper

Computer: rumba5
Architecture: x86
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20181216
Operation: crypto_kem
Primitive: titaniumccasuper

Compiler output

Implementation: crypto_kem/titaniumccasuper/avx2
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: encrypt.c:63:6: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
encrypt.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
encrypt.c: ^
encrypt.c: encrypt.c:66:4: error: called from here
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^
encrypt.c: encrypt.c:65:6: error: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: ...

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

Compiler output

Implementation: crypto_kem/titaniumccasuper/opt
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:67:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /home/djb/benchmarking/supercop-20181113/supercop-data/rumba5/x86/lib/libkeccak.a(KeccakP-1600-times4-SIMD256.o): In function `KeccakP1600times4_KravatteCompress':
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: /home/djb/benchmarking/supercop-20181113/supercop-data/rumba5/x86/lib/libkeccak.a(KeccakP-1600-times4-SIMD256.o):KeccakP-1600-times4-SIMD256.c:(.text+0x...): more undefined references to `_mm256_extract_epi64' follow
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: crypto_kem/titaniumccasuper/avx2
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: encrypt.c:63:6: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
encrypt.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
encrypt.c: ^
encrypt.c: encrypt.c:66:4: error: called from here
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^
encrypt.c: encrypt.c:65:6: error: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: ...
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: encrypt.c:63:6: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
encrypt.c: u = _mm256_loadu_si256((__m256i *)(a[i] + j));
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avxintrin.h:900:1: error: inlining failed in call to always_inline '_mm256_storeu_si256': target specific option mismatch
encrypt.c: _mm256_storeu_si256 (__m256i *__P, __m256i __A)
encrypt.c: ^
encrypt.c: encrypt.c:66:4: error: called from here
encrypt.c: _mm256_storeu_si256((__m256i *)(a[i] + j), t);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^
encrypt.c: encrypt.c:65:6: error: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:41:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: ...

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

Compiler output

Implementation: crypto_kem/titaniumccasuper/opt
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:67:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /home/djb/benchmarking/supercop-20181113/supercop-data/rumba5/x86/lib/libkeccak.a(KeccakP-1600-times4-SIMD256.o): In function `KeccakP1600times4_KravatteCompress':
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: /home/djb/benchmarking/supercop-20181113/supercop-data/rumba5/x86/lib/libkeccak.a(KeccakP-1600-times4-SIMD256.o):KeccakP-1600-times4-SIMD256.c:(.text+0x...): more undefined references to `_mm256_extract_epi64' follow
try.c: collect2: error: ld returned 1 exit status
pack.c: pack.c: In function 'poly_decode':
pack.c: pack.c:67:6: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
pack.c: bb = b + (i / 8) * Q_BITS;
pack.c: ^
try.c: /home/djb/benchmarking/supercop-20181113/supercop-data/rumba5/x86/lib/libkeccak.a(KeccakP-1600-times4-SIMD256.o): In function `KeccakP1600times4_KravatteCompress':
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: KeccakP-1600-times4-SIMD256.c:(.text+0x...): undefined reference to `_mm256_extract_epi64'
try.c: /home/djb/benchmarking/supercop-20181113/supercop-data/rumba5/x86/lib/libkeccak.a(KeccakP-1600-times4-SIMD256.o):KeccakP-1600-times4-SIMD256.c:(.text+0x...): more undefined references to `_mm256_extract_epi64' follow
try.c: collect2: error: ld returned 1 exit status

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

Compiler output

Implementation: crypto_kem/titaniumccasuper/avx2
Compiler: gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: encrypt.c: In function 'crypto_encrypt_keypair':
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^
encrypt.c: encrypt.c:65:6: error: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:567:1: error: inlining failed in call to always_inline '_mm256_mul_epu32': target specific option mismatch
encrypt.c: _mm256_mul_epu32 (__m256i __A, __m256i __B)
encrypt.c: ^
encrypt.c: encrypt.c:65:6: error: called from here
encrypt.c: t = _mm256_mul_epu32(u, v);
encrypt.c: ^
encrypt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/5/include/immintrin.h:43:0,
encrypt.c: from /usr/lib/gcc/x86_64-linux-gnu/5/include/x86intrin.h:46,
encrypt.c: from encrypt.c:18:
encrypt.c: /usr/lib/gcc/x86_64-linux-gnu/5/include/avx2intrin.h:822:1: error: inlining failed in call to always_inline '_mm256_sub_epi64': target specific option mismatch
encrypt.c: _mm256_sub_epi64 (__m256i __A, __m256i __B)
encrypt.c: ^
encrypt.c: ...

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