Implementation notes: amd64, skylake, crypto_scalarmult/nistp256

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_scalarmult
Primitive: nistp256
TimeImplementationCompilerBenchmark dateSUPERCOP version
2464316mj32clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121720161026
2465106mj32clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121720161026
2473092mj32clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121720161026
2488018mj32clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121720161026
2488858mj32clang -O3 -fomit-frame-pointer -Qunused-arguments2016121720161026
2489530mj32clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121720161026
2602332mj32gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121720161026
2604048mj32gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121720161026
2607542mj32gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121720161026
2609058mj32gcc -funroll-loops -O2 -fomit-frame-pointer2016121720161026
2615986mj32gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121720161026
2617872mj32gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121720161026
2621644mj32gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121720161026
2632316mj32gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121720161026
2632474mj32gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121720161026
2747408mj32gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121720161026
2750584mj32gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121720161026
2750600mj32gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121720161026
2756480mj32gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121720161026
2777036mj32gcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121720161026
2780792mj32gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121720161026
2781146mj32gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121720161026
2782726mj32gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121720161026
2817138mj32gcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121720161026
2817416mj32gcc -march=k8 -O3 -fomit-frame-pointer2016121720161026
2817674mj32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121720161026
2825666mj32gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121720161026
2826294mj32gcc -march=barcelona -O3 -fomit-frame-pointer2016121720161026
2828292mj32gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121720161026
2830206mj32gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121720161026
2832430mj32gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121720161026
2833236mj32gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121720161026
2837812mj32gcc -funroll-loops -O3 -fomit-frame-pointer2016121720161026
2855594mj32gcc -march=nocona -O3 -fomit-frame-pointer2016121720161026
2855708mj32gcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121720161026
2876404mj32gcc -O3 -fomit-frame-pointer2016121720161026
2877124mj32gcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121720161026
2890430mj32gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121720161026
2923450mj32gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121720161026
2942090mj32gcc -m64 -O3 -fomit-frame-pointer2016121720161026
3163038mj32gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121720161026
3163192mj32gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121720161026
3306510mj32clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121720161026
3309554mj32clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121720161026
3314974mj32clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121720161026
3321128mj32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121720161026
3422932mj32gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121720161026
3427834mj32gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121720161026
3446070mj32gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121720161026
3451454mj32gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121720161026
3490024mj32gcc -funroll-loops -m64 -O -fomit-frame-pointer2016121720161026
3506286mj32gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121720161026
3508404mj32gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121720161026
3511640mj32gcc -funroll-loops -O -fomit-frame-pointer2016121720161026
3545590mj32gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121720161026
3763524mj32gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121720161026
3768794mj32gcc -march=barcelona -O2 -fomit-frame-pointer2016121720161026
3787510mj32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121720161026
3792732mj32gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121720161026
3806394mj32gcc -march=k8 -O2 -fomit-frame-pointer2016121720161026
3816136mj32gcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121720161026
3823142mj32gcc -m64 -O2 -fomit-frame-pointer2016121720161026
3825546mj32gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121720161026
3831146mj32gcc -O2 -fomit-frame-pointer2016121720161026
3842286mj32gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121720161026
3842578mj32gcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121720161026
3845602mj32gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121720161026
3850334mj32gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121720161026
3850554mj32gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121720161026
3851972mj32gcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121720161026
3857212mj32gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121720161026
3904390mj32gcc -march=nocona -O2 -fomit-frame-pointer2016121720161026
3914478mj32gcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121720161026
4195804mj32gcc -march=nocona -Os -fomit-frame-pointer2016121720161026
4208674mj32gcc -m64 -march=nocona -Os -fomit-frame-pointer2016121720161026
4223456mj32gcc -march=k8 -Os -fomit-frame-pointer2016121720161026
4229202mj32gcc -m64 -march=core2 -Os -fomit-frame-pointer2016121720161026
4229314mj32gcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121720161026
4230838mj32gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121720161026
4231564mj32gcc -march=barcelona -Os -fomit-frame-pointer2016121720161026
4235598mj32gcc -fno-schedule-insns -Os -fomit-frame-pointer2016121720161026
4238648mj32gcc -Os -fomit-frame-pointer2016121720161026
4238918mj32gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121720161026
4243644mj32gcc -m64 -march=k8 -Os -fomit-frame-pointer2016121720161026
4248780mj32gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121720161026
4249462mj32gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121720161026
4249510mj32gcc -m64 -Os -fomit-frame-pointer2016121720161026
4252564mj32gcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121720161026
4322550mj32gcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121720161026
4330934mj32gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121720161026
4331298mj32gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121720161026
4331922mj32gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121720161026
4332152mj32gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121720161026
4332162mj32gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121720161026
4333966mj32gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121720161026
4349142mj32gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121720161026
4350500mj32gcc -funroll-loops -Os -fomit-frame-pointer2016121720161026
4353818mj32gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121720161026
4354356mj32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121720161026
4360906mj32gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121720161026
7162114mj32gcc -march=barcelona -O -fomit-frame-pointer2016121720161026
7217968mj32gcc -m64 -march=barcelona -O -fomit-frame-pointer2016121720161026
7227136mj32gcc -m64 -O -fomit-frame-pointer2016121720161026
7229562mj32gcc -fno-schedule-insns -O -fomit-frame-pointer2016121720161026
7248072mj32gcc -O -fomit-frame-pointer2016121720161026
7255270mj32gcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121720161026
7262234mj32gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121720161026
7344352mj32gcc -m64 -march=nocona -O -fomit-frame-pointer2016121720161026
7344440mj32gcc -march=nocona -O -fomit-frame-pointer2016121720161026
7398182mj32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121720161026
7810274mj32gcc -march=k8 -O -fomit-frame-pointer2016121720161026
7812160mj32gcc -m64 -march=k8 -O -fomit-frame-pointer2016121720161026
7845804mj32gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121720161026
7847266mj32gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121720161026
7856178mj32gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121720161026
7894114mj32gcc -m64 -march=core2 -O -fomit-frame-pointer2016121720161026
7899962mj32gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121720161026
7904056mj32gcc -m64 -march=corei7 -O -fomit-frame-pointer2016121720161026
35555372mj32cc2016121720161026
35567656mj32gcc -funroll-loops2016121720161026
35612990mj32gcc2016121720161026

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 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 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: 107, 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=core-avx-i -O2 -fomit-frame-pointer mj32
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer mj32
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer mj32
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer mj32
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer mj32
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer mj32
gcc -m64 -march=core-avx2 -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 -O3 -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 -O3 -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-avx -O2 -fomit-frame-pointer mj32
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer mj32
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer mj32
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer mj32
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer mj32
gcc -m64 -march=corei7 -O3 -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 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 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: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments mj32
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments mj32
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments mj32
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments mj32
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments mj32
clang -O3 -fwrapv -mavx -maes -mpclmul -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 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 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 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 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