Implementation notes: amd64, hydra3, crypto_scalarmult/nistp256

Computer: hydra3
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20171218
Operation: crypto_scalarmult
Primitive: nistp256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3581567? ? ?? ? ?mj32clang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2017111520171020
3599234? ? ?? ? ?mj32clang_-mcpu=cortex-a9_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111520171020
3599579? ? ?? ? ?mj32clang_-mcpu=native_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111520171020
3602009? ? ?? ? ?mj32clang_-O3_-fomit-frame-pointer_-Qunused-arguments2017111520171020
3605623? ? ?? ? ?mj32clang_-mcpu=cortex-a8_-mfpu=neon_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111520171020
3606380? ? ?? ? ?mj32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2017111520171020
3668213? ? ?? ? ?mj32gcc_-funroll-loops_-O2_-fomit-frame-pointer2017111520171020
3671211? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-O2_-fomit-frame-pointer2017111520171020
3686949? ? ?? ? ?mj32gcc_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2017111520171020
3706558? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=k8_-O2_-fomit-frame-pointer2017111520171020
3708214? ? ?? ? ?mj32gcc_-funroll-loops_-march=k8_-O2_-fomit-frame-pointer2017111520171020
3730391? ? ?? ? ?mj32gcc_-funroll-loops_-march=barcelona_-O2_-fomit-frame-pointer2017111520171020
3736370? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017111520171020
3741509? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=nocona_-O2_-fomit-frame-pointer2017111520171020
3742609? ? ?? ? ?mj32gcc_-funroll-loops_-march=nocona_-O2_-fomit-frame-pointer2017111520171020
3801057? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=nocona_-O3_-fomit-frame-pointer2017111520171020
3801798? ? ?? ? ?mj32gcc_-funroll-loops_-march=nocona_-O3_-fomit-frame-pointer2017111520171020
3837132? ? ?? ? ?mj32gcc_-march=nocona_-O3_-fomit-frame-pointer2017111520171020
3842814? ? ?? ? ?mj32gcc_-m64_-march=nocona_-O3_-fomit-frame-pointer2017111520171020
3932348? ? ?? ? ?mj32gcc_-funroll-loops_-O3_-fomit-frame-pointer2017111520171020
3933044? ? ?? ? ?mj32gcc_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2017111520171020
3944645? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-O3_-fomit-frame-pointer2017111520171020
3947086? ? ?? ? ?mj32gcc_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017111520171020
3948671? ? ?? ? ?mj32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2017111520171020
3951656? ? ?? ? ?mj32gcc_-m64_-march=k8_-O3_-fomit-frame-pointer2017111520171020
3957347? ? ?? ? ?mj32gcc_-march=k8_-O3_-fomit-frame-pointer2017111520171020
3964302? ? ?? ? ?mj32gcc_-fno-schedule-insns_-O3_-fomit-frame-pointer2017111520171020
3966153? ? ?? ? ?mj32gcc_-march=barcelona_-O3_-fomit-frame-pointer2017111520171020
3971395? ? ?? ? ?mj32gcc_-O3_-fomit-frame-pointer2017111520171020
3972304? ? ?? ? ?mj32gcc_-m64_-O3_-fomit-frame-pointer2017111520171020
3979604? ? ?? ? ?mj32gcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2017111520171020
3983181? ? ?? ? ?mj32gcc_-funroll-loops_-march=k8_-O3_-fomit-frame-pointer2017111520171020
3996394? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=k8_-O3_-fomit-frame-pointer2017111520171020
4042986? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=barcelona_-O3_-fomit-frame-pointer2017111520171020
4044672? ? ?? ? ?mj32gcc_-funroll-loops_-march=barcelona_-O3_-fomit-frame-pointer2017111520171020
4869211? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=barcelona_-O_-fomit-frame-pointer2017111520171020
4870295? ? ?? ? ?mj32gcc_-funroll-loops_-march=barcelona_-O_-fomit-frame-pointer2017111520171020
4884330? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=nocona_-O_-fomit-frame-pointer2017111520171020
4887185? ? ?? ? ?mj32gcc_-funroll-loops_-march=nocona_-O_-fomit-frame-pointer2017111520171020
4902335? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=k8_-O_-fomit-frame-pointer2017111520171020
4952705? ? ?? ? ?mj32gcc_-funroll-loops_-march=k8_-O_-fomit-frame-pointer2017111520171020
5059878? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-O_-fomit-frame-pointer2017111520171020
5082531? ? ?? ? ?mj32gcc_-funroll-loops_-O_-fomit-frame-pointer2017111520171020
5089803? ? ?? ? ?mj32gcc_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2017111520171020
6235560? ? ?? ? ?mj32gcc_-march=barcelona_-O2_-fomit-frame-pointer2017111520171020
6247904? ? ?? ? ?mj32gcc_-m64_-march=barcelona_-O2_-fomit-frame-pointer2017111520171020
6250364? ? ?? ? ?mj32gcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2017111520171020
6259346? ? ?? ? ?mj32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2017111520171020
6372521? ? ?? ? ?mj32gcc_-m64_-O2_-fomit-frame-pointer2017111520171020
6374028? ? ?? ? ?mj32gcc_-fno-schedule-insns_-O2_-fomit-frame-pointer2017111520171020
6375148? ? ?? ? ?mj32gcc_-O2_-fomit-frame-pointer2017111520171020
6388270? ? ?? ? ?mj32gcc_-m64_-march=k8_-O2_-fomit-frame-pointer2017111520171020
6465503? ? ?? ? ?mj32gcc_-march=k8_-O2_-fomit-frame-pointer2017111520171020
6591110? ? ?? ? ?mj32gcc_-m64_-march=core2_-msse4.1_-O2_-fomit-frame-pointer2017111520171020
6595999? ? ?? ? ?mj32gcc_-m64_-march=core2_-O2_-fomit-frame-pointer2017111520171020
6596487? ? ?? ? ?mj32gcc_-m64_-march=core2_-msse4_-O2_-fomit-frame-pointer2017111520171020
6611136? ? ?? ? ?mj32gcc_-m64_-march=corei7_-O2_-fomit-frame-pointer2017111520171020
6836079? ? ?? ? ?mj32gcc_-m64_-march=nocona_-O2_-fomit-frame-pointer2017111520171020
6841375? ? ?? ? ?mj32gcc_-march=nocona_-O2_-fomit-frame-pointer2017111520171020
7060665? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=nocona_-Os_-fomit-frame-pointer2017111520171020
7067389? ? ?? ? ?mj32gcc_-funroll-loops_-march=nocona_-Os_-fomit-frame-pointer2017111520171020
7147686? ? ?? ? ?mj32gcc_-funroll-loops_-march=barcelona_-Os_-fomit-frame-pointer2017111520171020
7148439? ? ?? ? ?mj32gcc_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2017111520171020
7164102? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017111520171020
7188414? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-march=k8_-Os_-fomit-frame-pointer2017111520171020
7192210? ? ?? ? ?mj32gcc_-funroll-loops_-march=k8_-Os_-fomit-frame-pointer2017111520171020
7205710? ? ?? ? ?mj32gcc_-funroll-loops_-Os_-fomit-frame-pointer2017111520171020
7576116? ? ?? ? ?mj32gcc_-funroll-loops_-m64_-Os_-fomit-frame-pointer2017111520171020
7862629? ? ?? ? ?mj32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2017111520171020
7975506? ? ?? ? ?mj32gcc_-march=k8_-Os_-fomit-frame-pointer2017111520171020
7976214? ? ?? ? ?mj32gcc_-fno-schedule-insns_-Os_-fomit-frame-pointer2017111520171020
7984885? ? ?? ? ?mj32gcc_-m64_-Os_-fomit-frame-pointer2017111520171020
7986918? ? ?? ? ?mj32gcc_-m64_-march=corei7_-Os_-fomit-frame-pointer2017111520171020
7995047? ? ?? ? ?mj32gcc_-Os_-fomit-frame-pointer2017111520171020
7995058? ? ?? ? ?mj32gcc_-m64_-march=core2_-msse4.1_-Os_-fomit-frame-pointer2017111520171020
7997883? ? ?? ? ?mj32gcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2017111520171020
8005953? ? ?? ? ?mj32gcc_-m64_-march=barcelona_-Os_-fomit-frame-pointer2017111520171020
8008541? ? ?? ? ?mj32gcc_-march=barcelona_-Os_-fomit-frame-pointer2017111520171020
8019288? ? ?? ? ?mj32gcc_-m64_-march=core2_-Os_-fomit-frame-pointer2017111520171020
8019346? ? ?? ? ?mj32gcc_-m64_-march=k8_-Os_-fomit-frame-pointer2017111520171020
8208202? ? ?? ? ?mj32gcc_-m64_-march=core2_-msse4_-Os_-fomit-frame-pointer2017111520171020
8353366? ? ?? ? ?mj32gcc_-march=nocona_-Os_-fomit-frame-pointer2017111520171020
8496595? ? ?? ? ?mj32gcc_-m64_-march=nocona_-Os_-fomit-frame-pointer2017111520171020
11031378? ? ?? ? ?mj32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2017111520171020
11133225? ? ?? ? ?mj32gcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2017111520171020
11148289? ? ?? ? ?mj32gcc_-march=barcelona_-O_-fomit-frame-pointer2017111520171020
11212564? ? ?? ? ?mj32gcc_-m64_-march=barcelona_-O_-fomit-frame-pointer2017111520171020
11425056? ? ?? ? ?mj32gcc_-march=k8_-O_-fomit-frame-pointer2017111520171020
11427626? ? ?? ? ?mj32gcc_-m64_-march=k8_-O_-fomit-frame-pointer2017111520171020
12248331? ? ?? ? ?mj32gcc_-fno-schedule-insns_-O_-fomit-frame-pointer2017111520171020
12296102? ? ?? ? ?mj32gcc_-O_-fomit-frame-pointer2017111520171020
12501690? ? ?? ? ?mj32gcc_-m64_-O_-fomit-frame-pointer2017111520171020
12580975? ? ?? ? ?mj32gcc_-m64_-march=nocona_-O_-fomit-frame-pointer2017111520171020
12583056? ? ?? ? ?mj32gcc_-march=nocona_-O_-fomit-frame-pointer2017111520171020
13202628? ? ?? ? ?mj32gcc_-m64_-march=core2_-msse4_-O_-fomit-frame-pointer2017111520171020
13221207? ? ?? ? ?mj32gcc_-m64_-march=corei7_-O_-fomit-frame-pointer2017111520171020
13256111? ? ?? ? ?mj32gcc_-m64_-march=core2_-msse4.1_-O_-fomit-frame-pointer2017111520171020
13263848? ? ?? ? ?mj32gcc_-m64_-march=core2_-O_-fomit-frame-pointer2017111520171020
56159795? ? ?? ? ?mj32gcc_-funroll-loops2017111520171020
56170657? ? ?? ? ?mj32gcc2017111520171020
56235279? ? ?? ? ?mj32cc2017111520171020

Test failure

Implementation: crypto_scalarmult/nistp256/mj32
Compiler: gcc -m64 -march=core2 -O3 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -m64 -march=core2 -O3 -fomit-frame-pointer mj32

Compiler output

Implementation: crypto_scalarmult/nistp256/mj32
Compiler: cc
gep256.c: gep256.c: In function 'isneutral':
gep256.c: gep256.c:83:28: warning: 'sizeof' on array function parameter 'p' will return size of 'crypto_uint32 (*)[8] {aka unsigned int (*)[8]}' [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:78:29: note: declared here
gep256.c: static int isneutral(gep256 p) {
gep256.c: ^
gep256.c: gep256.c: In function 'isneutral_precomp':
gep256.c: gep256.c:92:28: warning: 'sizeof' on array function parameter 'p' will return size of 'crypto_uint32 (*)[8] {aka unsigned int (*)[8]}' [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:87:45: note: declared here
gep256.c: static int isneutral_precomp(gep256_precomp p) {
gep256.c: ^

Number of similar (compiler,implementation) pairs: 92, namely:
CompilerImplementations
cc mj32
gcc mj32
gcc -O2 -fomit-frame-pointer mj32
gcc -O3 -fomit-frame-pointer mj32
gcc -O -fomit-frame-pointer mj32
gcc -Os -fomit-frame-pointer mj32
gcc -fno-schedule-insns -O2 -fomit-frame-pointer mj32
gcc -fno-schedule-insns -O3 -fomit-frame-pointer mj32
gcc -fno-schedule-insns -O -fomit-frame-pointer mj32
gcc -fno-schedule-insns -Os -fomit-frame-pointer mj32
gcc -funroll-loops mj32
gcc -funroll-loops -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -O -fomit-frame-pointer mj32
gcc -funroll-loops -Os -fomit-frame-pointer mj32
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer mj32
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -O -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -Os -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer mj32
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer mj32
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer mj32
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer mj32
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer mj32
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer mj32
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer mj32
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer mj32
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer mj32
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer mj32
gcc -m64 -O2 -fomit-frame-pointer mj32
gcc -m64 -O3 -fomit-frame-pointer mj32
gcc -m64 -O -fomit-frame-pointer mj32
gcc -m64 -Os -fomit-frame-pointer mj32
gcc -m64 -march=core2 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=core2 -O3 -fomit-frame-pointer mj32
gcc -m64 -march=core2 -O -fomit-frame-pointer mj32
gcc -m64 -march=core2 -Os -fomit-frame-pointer mj32
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer mj32
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer mj32
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer mj32
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer mj32
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=corei7 -O -fomit-frame-pointer mj32
gcc -m64 -march=corei7 -Os -fomit-frame-pointer mj32
gcc -m64 -march=k8 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=k8 -O3 -fomit-frame-pointer mj32
gcc -m64 -march=k8 -O -fomit-frame-pointer mj32
gcc -m64 -march=k8 -Os -fomit-frame-pointer mj32
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer mj32
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer mj32
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer mj32
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer mj32
gcc -m64 -march=nocona -O2 -fomit-frame-pointer mj32
gcc -m64 -march=nocona -O3 -fomit-frame-pointer mj32
gcc -m64 -march=nocona -O -fomit-frame-pointer mj32
gcc -m64 -march=nocona -Os -fomit-frame-pointer mj32
gcc -march=barcelona -O2 -fomit-frame-pointer mj32
gcc -march=barcelona -O3 -fomit-frame-pointer mj32
gcc -march=barcelona -O -fomit-frame-pointer mj32
gcc -march=barcelona -Os -fomit-frame-pointer mj32
gcc -march=k8 -O2 -fomit-frame-pointer mj32
gcc -march=k8 -O3 -fomit-frame-pointer mj32
gcc -march=k8 -O -fomit-frame-pointer mj32
gcc -march=k8 -Os -fomit-frame-pointer mj32
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv mj32
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv mj32
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv mj32
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv mj32
gcc -march=nocona -O2 -fomit-frame-pointer mj32
gcc -march=nocona -O3 -fomit-frame-pointer mj32
gcc -march=nocona -O -fomit-frame-pointer mj32
gcc -march=nocona -Os -fomit-frame-pointer mj32

Compiler output

Implementation: crypto_scalarmult/nistp256/mj32
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
gep256.c: gep256.c:83:28: warning: sizeof on array function parameter will return size of 'fe *' (aka 'crypto_uint32 (*)[8]') instead of 'gep256' (aka 'fe [3]') [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:78:29: note: declared here
gep256.c: static int isneutral(gep256 p) {
gep256.c: ^
gep256.c: gep256.c:92:28: warning: sizeof on array function parameter will return size of 'fe *' (aka 'crypto_uint32 (*)[8]') instead of 'gep256_precomp' (aka 'fe [2]') [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:87:45: note: declared here
gep256.c: static int isneutral_precomp(gep256_precomp p) {
gep256.c: ^
gep256.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mj32
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments mj32
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mj32
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mj32
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mj32
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments mj32

Compiler output

Implementation: crypto_scalarmult/nistp256/mj32
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
gep256.c: gep256.c: In function 'isneutral':
gep256.c: gep256.c:83:28: warning: 'sizeof' on array function parameter 'p' will return size of 'crypto_uint32 (*)[8] {aka unsigned int (*)[8]}' [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:78:29: note: declared here
gep256.c: static int isneutral(gep256 p) {
gep256.c: ^
gep256.c: gep256.c: In function 'isneutral_precomp':
gep256.c: gep256.c:92:28: warning: 'sizeof' on array function parameter 'p' will return size of 'crypto_uint32 (*)[8] {aka unsigned int (*)[8]}' [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:87:45: note: declared here
gep256.c: static int isneutral_precomp(gep256_precomp p) {
gep256.c: ^
gep256.c: gep256.c: In function 'isneutral':
gep256.c: gep256.c:83:28: warning: 'sizeof' on array function parameter 'p' will return size of 'crypto_uint32 (*)[8] {aka unsigned int (*)[8]}' [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:78:29: note: declared here
gep256.c: static int isneutral(gep256 p) {
gep256.c: ^
gep256.c: gep256.c: In function 'isneutral_precomp':
gep256.c: gep256.c:92:28: warning: 'sizeof' on array function parameter 'p' will return size of 'crypto_uint32 (*)[8] {aka unsigned int (*)[8]}' [-Wsizeof-array-argument]
gep256.c: for (i = 0; i < sizeof p; ++i) x |= ((unsigned char *)p)[i];
gep256.c: ^
gep256.c: gep256.c:87:45: note: declared here
gep256.c: static int isneutral_precomp(gep256_precomp p) {
gep256.c: ^

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