Implementation notes: x86, h9trinity, crypto_sign/ed448goldilocks

Computer: h9trinity
Architecture: x86
CPU ID: AuthenticAMD-00610f01-178bfbff
SUPERCOP version: 20171218
Operation: crypto_sign
Primitive: ed448goldilocks
TimeImplementationCompilerBenchmark dateSUPERCOP version
792423232gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017121620171020
793967032gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017121620171020
798701732gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017121620171020
815592932gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017121620171020
815869832gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017121620171020
820074132gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017121620171020
870121132gcc -m32 -march=k8 -O2 -fomit-frame-pointer2017121620171020
871377032gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017121620171020
876177332gcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017121620171020
876966132gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017121620171020
876984832gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017121620171020
877280932gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017121620171020
877520032gcc -m32 -march=core2 -O2 -fomit-frame-pointer2017121620171020
877579432gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017121620171020
877873632gcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017121620171020
878282532gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017121620171020
879464532gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017121620171020
882229732gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017121620171020
884998132gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017121620171020
885485432gcc -m32 -march=k8 -Os -fomit-frame-pointer2017121620171020
887264732gcc -m32 -march=barcelona -Os -fomit-frame-pointer2017121620171020
887557432gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017121620171020
889910032gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017121620171020
890097132gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017121620171020
890694132gcc -m32 -march=core2 -Os -fomit-frame-pointer2017121620171020
890793532gcc -m32 -march=nocona -O2 -fomit-frame-pointer2017121620171020
890934132gcc -m32 -march=corei7 -Os -fomit-frame-pointer2017121620171020
894143932gcc -m32 -march=prescott -O2 -fomit-frame-pointer2017121620171020
895425532gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017121620171020
902335132gcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017121620171020
902368732gcc -m32 -march=prescott -Os -fomit-frame-pointer2017121620171020
904201932gcc -m32 -march=nocona -Os -fomit-frame-pointer2017121620171020
906514032gcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017121620171020
906786932gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017121620171020
907309532gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017121620171020
908400532gcc -m32 -march=k8 -O3 -fomit-frame-pointer2017121620171020
908526532gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017121620171020
910894232gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017121620171020
911486532gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017121620171020
915793332gcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017121620171020
922667332gcc -m32 -march=core2 -O3 -fomit-frame-pointer2017121620171020
922714732gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017121620171020
923780032gcc -m32 -march=core2 -O -fomit-frame-pointer2017121620171020
923981032gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017121620171020
924215332gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017121620171020
924353632gcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017121620171020
924492732gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017121620171020
924888532gcc -m32 -march=pentium-m -O -fomit-frame-pointer2017121620171020
928445232gcc -m32 -march=barcelona -O -fomit-frame-pointer2017121620171020
929533732gcc -m32 -march=corei7 -O -fomit-frame-pointer2017121620171020
932101532gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017121620171020
932185932gcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017121620171020
932369932gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017121620171020
933245132gcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017121620171020
933790432gcc -m32 -march=k8 -O -fomit-frame-pointer2017121620171020
936147032gcc -m32 -march=pentium4 -O -fomit-frame-pointer2017121620171020
936524632gcc -m32 -march=prescott -O -fomit-frame-pointer2017121620171020
936992332gcc -m32 -march=nocona -O -fomit-frame-pointer2017121620171020
937103332gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017121620171020
943719832gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017121620171020
949265532gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017121620171020
949583632gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017121620171020
952526432gcc -m32 -march=prescott -O3 -fomit-frame-pointer2017121620171020
953144832gcc -m32 -march=nocona -O3 -fomit-frame-pointer2017121620171020
953962232gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017121620171020
954598232gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017121620171020
954735132gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017121620171020
958991332gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017121620171020
961674732gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017121620171020
962167432gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017121620171020
964391332gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017121620171020
966245632gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017121620171020

Checksum failure

Implementation: crypto_sign/ed448goldilocks/32
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
f06e0575a1e4d9c1e3a81c0786a1420168d5087277c51193ac65588c93ee1ff1
Number of similar (compiler,implementation) pairs: 160, namely:
CompilerImplementations
gcc -funroll-loops -m32 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer 32 arm32
gcc -m32 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -O -fomit-frame-pointer 32 arm32
gcc -m32 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=athlon -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=athlon -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=athlon -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=athlon -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=i486 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=i486 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=i486 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=i486 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-2 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-2 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-3 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6-3 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=k6 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium2 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium2 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentiumpro -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer 32 arm32

Test failure

Implementation: crypto_sign/ed448goldilocks/32
Compiler: gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 19, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer 32
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer 32
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer 32
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium3 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer 32 arm32

Compiler output

Implementation: crypto_sign/ed448goldilocks/64
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
barrett_field.c: In file included from barrett_field.h:15:0,
barrett_field.c: from barrett_field.c:5:
barrett_field.c: word.h:34:9: error: unknown type name '__uint128_t'
barrett_field.c: typedef __uint128_t dword_t;
barrett_field.c: ^
barrett_field.c: word.h:37:9: error: unknown type name '__int128_t'
barrett_field.c: typedef __int128_t dsword_t;
barrett_field.c: ^
barrett_field.c: word.h: In function 'br_is_zero':
barrett_field.c: word.h:166:30: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: return (((dword_t)x) - 1)>gt;>gt;WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_ext_packed':
barrett_field.c: barrett_field.c:22:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:26:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_packed':
barrett_field.c: barrett_field.c:41:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'sub_nr_ext_packed':
barrett_field.c: barrett_field.c:59:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: ...

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/neon
Compiler: gcc -funroll-loops -m32 -O2 -fomit-frame-pointer
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_weak_reduce':
crandom.c: p448.h:314:14: warning: implicit declaration of function 'vshr_n_u32' [-Wimplicit-function-declaration]
crandom.c: tmp = vshr_n_u32(aa[7],28);
crandom.c: ^
crandom.c: p448.h:314:14: error: incompatible types when initializing type 'uint32x2_t {aka __vector(2) unsigned int}' using type 'int'
crandom.c: p448.h:318:17: warning: implicit declaration of function 'vsra_n_u32' [-Wimplicit-function-declaration]
crandom.c: aa[i] = vsra_n_u32(aa[i] & vmask, aa[i-1], 28);
crandom.c: ^
crandom.c: p448.h:318:15: error: incompatible types when assigning to type 'uint32x2_t {aka __vector(2) unsigned int}' from type 'int'
crandom.c: aa[i] = vsra_n_u32(aa[i] & vmask, aa[i-1], 28);
crandom.c: ^
crandom.c: p448.h:320:31: warning: implicit declaration of function 'vrev64_u32' [-Wimplicit-function-declaration]
crandom.c: aa[0] = (aa[0] & vmask) + vrev64_u32(tmp) + (tmp&vm2);
crandom.c: ^

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/64
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
barrett_field.c: In file included from barrett_field.h:15:0,
barrett_field.c: from barrett_field.c:5:
barrett_field.c: word.h:34:9: error: unknown type name '__uint128_t'
barrett_field.c: typedef __uint128_t dword_t;
barrett_field.c: ^
barrett_field.c: word.h:37:9: error: unknown type name '__int128_t'
barrett_field.c: typedef __int128_t dsword_t;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_ext_packed':
barrett_field.c: barrett_field.c:22:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:26:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_packed':
barrett_field.c: barrett_field.c:41:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'sub_nr_ext_packed':
barrett_field.c: barrett_field.c:59:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:63:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ...

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/arm32
Compiler: gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_cond_swap':
crandom.c: p448.h:194:24: error: incompatible types when initializing type 'big_register_t {aka __vector(4) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doswap;
crandom.c: ^
crandom.c: p448.h: In function 'p448_cond_neg':
crandom.c: p448.h:270:24: error: incompatible types when initializing type 'big_register_t {aka __vector(4) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doNegate;
crandom.c: ^

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/32
Compiler: gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer
try.c: crypto_sign_ed448goldilocks.a(goldilocks.o): In function `goldilocks_init':
try.c: goldilocks.c:(.text+0x...): undefined reference to `__sync_val_compare_and_swap_4'
try.c: goldilocks.c:(.text+0x...): undefined reference to `__sync_bool_compare_and_swap_4'
try.c: goldilocks.c:(.text+0x...): undefined reference to `__sync_bool_compare_and_swap_4'
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer 32 arm32
gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer 32 arm32
gcc -m32 -march=i386 -O2 -fomit-frame-pointer 32 arm32
gcc -m32 -march=i386 -O3 -fomit-frame-pointer 32 arm32
gcc -m32 -march=i386 -O -fomit-frame-pointer 32 arm32
gcc -m32 -march=i386 -Os -fomit-frame-pointer 32 arm32

Compiler output

Implementation: crypto_sign/ed448goldilocks/64
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
barrett_field.c: In file included from barrett_field.h:15:0,
barrett_field.c: from barrett_field.c:5:
barrett_field.c: word.h:34:9: error: unknown type name '__uint128_t'
barrett_field.c: typedef __uint128_t dword_t;
barrett_field.c: ^
barrett_field.c: word.h:37:9: error: unknown type name '__int128_t'
barrett_field.c: typedef __int128_t dsword_t;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_ext_packed':
barrett_field.c: barrett_field.c:22:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:26:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_packed':
barrett_field.c: barrett_field.c:41:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'sub_nr_ext_packed':
barrett_field.c: barrett_field.c:59:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:63:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ...
barrett_field.c: In file included from barrett_field.h:15:0,
barrett_field.c: from barrett_field.c:5:
barrett_field.c: word.h:34:9: error: unknown type name '__uint128_t'
barrett_field.c: typedef __uint128_t dword_t;
barrett_field.c: ^
barrett_field.c: word.h:37:9: error: unknown type name '__int128_t'
barrett_field.c: typedef __int128_t dsword_t;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_ext_packed':
barrett_field.c: barrett_field.c:22:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:26:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'add_nr_packed':
barrett_field.c: barrett_field.c:41:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c: In function 'sub_nr_ext_packed':
barrett_field.c: barrett_field.c:59:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ^
barrett_field.c: barrett_field.c:63:15: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
barrett_field.c: carry >gt;>gt;= WORD_BITS;
barrett_field.c: ...

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/arm32
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_cond_swap':
crandom.c: p448.h:194:24: error: incompatible types when initializing type 'big_register_t {aka __vector(4) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doswap;
crandom.c: ^
crandom.c: p448.h: In function 'p448_cond_neg':
crandom.c: p448.h:270:24: error: incompatible types when initializing type 'big_register_t {aka __vector(4) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doNegate;
crandom.c: ^
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_cond_swap':
crandom.c: p448.h:194:24: error: incompatible types when initializing type 'big_register_t {aka __vector(4) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doswap;
crandom.c: ^
crandom.c: p448.h: In function 'p448_cond_neg':
crandom.c: p448.h:270:24: error: incompatible types when initializing type 'big_register_t {aka __vector(4) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doNegate;
crandom.c: ^

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/neon
Compiler: gcc -m32 -march=barcelona -O2 -fomit-frame-pointer
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_weak_reduce':
crandom.c: p448.h:314:14: warning: implicit declaration of function 'vshr_n_u32' [-Wimplicit-function-declaration]
crandom.c: tmp = vshr_n_u32(aa[7],28);
crandom.c: ^
crandom.c: p448.h:314:14: error: incompatible types when initializing type 'uint32x2_t {aka __vector(2) unsigned int}' using type 'int'
crandom.c: p448.h:318:17: warning: implicit declaration of function 'vsra_n_u32' [-Wimplicit-function-declaration]
crandom.c: aa[i] = vsra_n_u32(aa[i] & vmask, aa[i-1], 28);
crandom.c: ^
crandom.c: p448.h:318:15: error: incompatible types when assigning to type 'uint32x2_t {aka __vector(2) unsigned int}' from type 'int'
crandom.c: aa[i] = vsra_n_u32(aa[i] & vmask, aa[i-1], 28);
crandom.c: ^
crandom.c: p448.h:320:31: warning: implicit declaration of function 'vrev64_u32' [-Wimplicit-function-declaration]
crandom.c: aa[0] = (aa[0] & vmask) + vrev64_u32(tmp) + (tmp&vm2);
crandom.c: ^
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_weak_reduce':
crandom.c: p448.h:314:14: warning: implicit declaration of function 'vshr_n_u32' [-Wimplicit-function-declaration]
crandom.c: tmp = vshr_n_u32(aa[7],28);
crandom.c: ^
crandom.c: p448.h:314:14: error: incompatible types when initializing type 'uint32x2_t {aka __vector(2) unsigned int}' using type 'int'
crandom.c: p448.h:318:17: warning: implicit declaration of function 'vsra_n_u32' [-Wimplicit-function-declaration]
crandom.c: aa[i] = vsra_n_u32(aa[i] & vmask, aa[i-1], 28);
crandom.c: ^
crandom.c: p448.h:318:15: error: incompatible types when assigning to type 'uint32x2_t {aka __vector(2) unsigned int}' from type 'int'
crandom.c: aa[i] = vsra_n_u32(aa[i] & vmask, aa[i-1], 28);
crandom.c: ^
crandom.c: p448.h:320:31: warning: implicit declaration of function 'vrev64_u32' [-Wimplicit-function-declaration]
crandom.c: aa[0] = (aa[0] & vmask) + vrev64_u32(tmp) + (tmp&vm2);
crandom.c: ^

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/arm32
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
crandom.c: In file included from magic.h:15:0,
crandom.c: from crandom.c:11:
crandom.c: p448.h: In function 'p448_cond_swap':
crandom.c: p448.h:194:24: error: incompatible types when initializing type 'big_register_t {aka __vector(8) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doswap;
crandom.c: ^
crandom.c: p448.h: In function 'p448_cond_neg':
crandom.c: p448.h:270:24: error: incompatible types when initializing type 'big_register_t {aka __vector(8) unsigned int}' using type 'mask_t {aka unsigned int}'
crandom.c: big_register_t m = doNegate;
crandom.c: ^

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

Compiler output

Implementation: crypto_sign/ed448goldilocks/32
Compiler: gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer
crandom.c: intrinsics.h: Assembler messages:
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer 32
gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer 32
gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer 32

Compiler output

Implementation: crypto_sign/ed448goldilocks/32
Compiler: gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer
crandom.c: intrinsics.h: Assembler messages:
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'
crandom.c: intrinsics.h:176: Error: operand type mismatch for `vprotd'

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