Implementation notes: x86, thoth, crypto_dh/ed448goldilocks

Computer: thoth
Architecture: x86
CPU ID: AuthenticAMD-00000622-0183f9ff
SUPERCOP version: 20160806
Operation: crypto_dh
Primitive: ed448goldilocks
TimeImplementationCompilerBenchmark dateSUPERCOP version
11626272arm32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072820160724
12377026arm32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072820160724
13405977arm32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072820160724
13673316arm32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072820160724
1834413932clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016072820160724
1856084032gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016072820160724
1935748232gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072820160724
2057212232gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016072820160724
2387493932gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016072820160724
26757078arm32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016072820160724

Compiler output

Implementation: crypto_dh/ed448goldilocks/64
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
barrett_field.c: In file included from barrett_field.c:5:
barrett_field.c: In file included from ./barrett_field.h:15:
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:166:30: warning: 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:22:15: warning: 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: 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:41:15: warning: 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:59:15: warning: 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: 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: 2, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments 64 amd64

Compiler output

Implementation: crypto_dh/ed448goldilocks/64
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
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: 8, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv 64 amd64
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv 64 amd64
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv 64 amd64
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv 64 amd64