Implementation notes: armeabi, a15, crypto_scalarmult/curve25519

Computer: a15
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20161026
Operation: crypto_scalarmult
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
1250223neon2gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121720161026
1250224neon2gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121720161026
1250312neon2gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121720161026
1250320neon2gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121720161026
1250347neon2gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121720161026
1250347neon2gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121720161026
3214494ref10gcc -mcpu=native -mfpu=neon-vfpv4 -O32016121720161026
3223319ref10gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121720161026
3259612ref10gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121720161026
3268160ref10gcc -mcpu=native -mfpu=neon-vfpv4 -O22016121720161026
3440585ref10gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121720161026
3483703ref10gcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121720161026
39822146refgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O32016121720161026
40561902refgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O22016121720161026
46457335refgcc -mcpu=native -mfpu=neon-vfpv4 -O32016121720161026
49613619refgcc -mcpu=native -mfpu=neon-vfpv4 -O22016121720161026
53307097refgcc -mcpu=native -mfpu=neon-vfpv4 -Os2016121720161026
53530293refgcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os2016121720161026

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2
smult.c: smult.c:34:1: error: unable to emulate 'TI'
smult.c: typedef unsigned uint128_t __attribute__((mode(TI)));
smult.c: ^~~~~~~
smult.c: smult.c: In function 'fscalar_product':
smult.c: smult.c:76:49: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
smult.c: a = ((uint128_t) in[1]) * scalar + ((limb) (a >gt;>gt; 51));
smult.c: ^~
smult.c: smult.c:79:49: warning: right shift count >gt;= width of type [-Wshift-count-overflow]
smult.c: a = ((uint128_t) in[2]) * scalar + ((limb) (a >gt;>gt; 51));
smult.c: ^~
smult.c: ...
smult.c: ^~~~
smult.c: smult.c:70:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fscalar_product(felem output, const felem in, const limb scalar) {
smult.c: ^~~~~~~~~~~~~~~
smult.c: smult.c:56:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fdifference_backwards(felem out, const felem in) {
smult.c: ^~~~~~~~~~~~~~~~~~~~~
smult.c: smult.c:41:1: warning: always_inline function might not be inlinable [-Wattributes]
smult.c: fsum(limb *output, const limb *in) {
smult.c: ^~~~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O2 donna_c64
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -O3 donna_c64
gcc -funroll-loops -mcpu=native -mfpu=neon-vfpv4 -Os donna_c64
gcc -mcpu=native -mfpu=neon-vfpv4 -O2 donna_c64
gcc -mcpu=native -mfpu=neon-vfpv4 -O3 donna_c64
gcc -mcpu=native -mfpu=neon-vfpv4 -Os donna_c64