Implementation notes: x86, hydra8, crypto_sign/ed448goldilocks

Computer: hydra8
Architecture: x86
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_sign
Primitive: ed448goldilocks
TimeImplementationCompilerBenchmark dateSUPERCOP version
719124832gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017072320170718
719711632gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017072320170718
720563232gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017072320170718
737856832gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017072320170718
743852832gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017072320170718
746686432gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017072320170718
747040032gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017072320170718
747642832gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017072320170718
748443232gcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017072320170718
750378832gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017072320170718
750506832gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017072320170718
750900032gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017072320170718
751244832gcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017072320170718
751263232gcc -m32 -march=core2 -O2 -fomit-frame-pointer2017072320170718
752774432gcc -m32 -march=k8 -O2 -fomit-frame-pointer2017072320170718
754430432gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017072320170718
767005632gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017072320170718
768159232gcc -m32 -march=prescott -O2 -fomit-frame-pointer2017072320170718
769255632gcc -m32 -march=nocona -O2 -fomit-frame-pointer2017072320170718
769539232gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017072320170718
770455232gcc -m32 -march=barcelona -Os -fomit-frame-pointer2017072320170718
770458032gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017072320170718
770545232gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017072320170718
770842432gcc -m32 -march=core2 -Os -fomit-frame-pointer2017072320170718
770914432gcc -m32 -march=k8 -Os -fomit-frame-pointer2017072320170718
770957632gcc -m32 -march=corei7 -Os -fomit-frame-pointer2017072320170718
771000032gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017072320170718
771782032gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017072320170718
772174832gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017072320170718
773046032gcc -m32 -march=core2 -O3 -fomit-frame-pointer2017072320170718
774925632gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017072320170718
775581632gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017072320170718
776186432gcc -m32 -march=corei7 -O3 -fomit-frame-pointer2017072320170718
776788032gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2017072320170718
777409632gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017072320170718
777761632gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2017072320170718
778506832gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017072320170718
778852032gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017072320170718
779006432gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017072320170718
779221632gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2017072320170718
780909232gcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017072320170718
781080832gcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017072320170718
782365232gcc -m32 -march=k8 -O3 -fomit-frame-pointer2017072320170718
788807232gcc -m32 -march=prescott -O3 -fomit-frame-pointer2017072320170718
789739632gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017072320170718
791991232gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017072320170718
792052832gcc -m32 -march=nocona -O3 -fomit-frame-pointer2017072320170718
793900032gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017072320170718
796035232gcc -m32 -march=nocona -Os -fomit-frame-pointer2017072320170718
796992832gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017072320170718
797319232gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017072320170718
798072032gcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017072320170718
800667632gcc -m32 -march=prescott -Os -fomit-frame-pointer2017072320170718
804234832gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017072320170718
805740432gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017072320170718
814027632gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017072320170718
814742832gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017072320170718
833304832gcc -m32 -march=nocona -O -fomit-frame-pointer2017072320170718
834899232gcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017072320170718
835115632gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017072320170718
835346432gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017072320170718
835670032gcc -m32 -march=corei7 -O -fomit-frame-pointer2017072320170718
835882032gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017072320170718
836166432gcc -m32 -march=prescott -O -fomit-frame-pointer2017072320170718
836328032gcc -m32 -march=k8 -O -fomit-frame-pointer2017072320170718
836688432gcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017072320170718
838170832gcc -m32 -march=pentium-m -O -fomit-frame-pointer2017072320170718
838253632gcc -m32 -march=barcelona -O -fomit-frame-pointer2017072320170718
838480832gcc -m32 -march=core2 -O -fomit-frame-pointer2017072320170718
843960832gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017072320170718
844400832gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017072320170718
844958832gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017072320170718
846921232gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017072320170718
846977232gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017072320170718
847360032gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017072320170718
848598032gcc -m32 -march=pentium4 -O -fomit-frame-pointer2017072320170718

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