Implementation notes: armeabi, h7beagle, crypto_scalarmult/curve25519

Computer: h7beagle
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20140622
Operation: crypto_scalarmult
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
1838348neon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014062820140529
1838386neon2gcc -O2 -fomit-frame-pointer2014062820140529
1841630neon2gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014062820140529
1940510neon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014062820140529
1940564neon2gcc2014062820140529
1940584neon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014062820140529
1940736neon2gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014062820140529
1940813neon2gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014062820140529
1940827neon2gcc -funroll-loops -Os -fomit-frame-pointer2014062820140529
1941114neon2gcc -funroll-loops -O -fomit-frame-pointer2014062820140529
1941557neon2gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014062820140529
1942775neon2gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014062820140529
1944059neon2gcc -fno-schedule-insns -Os -fomit-frame-pointer2014062820140529
1946479neon2gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014062820140529
1947022neon2cc2014062820140529
1947684neon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014062820140529
1948744neon2gcc -fno-schedule-insns -O -fomit-frame-pointer2014062820140529
1948780neon2gcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014062820140529
1955818neon2gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014062820140529
1955855neon2gcc -funroll-loops -O2 -fomit-frame-pointer2014062820140529
1957852neon2gcc -Os -fomit-frame-pointer2014062820140529
1958841neon2gcc -funroll-loops2014062820140529
1962576neon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014062820140529
1966071neon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014062820140529
1969214neon2gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014062820140529
1969875neon2gcc -O -fomit-frame-pointer2014062820140529
1969912neon2gcc -O3 -fomit-frame-pointer2014062820140529
1969963neon2gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014062820140529
1974140neon2gcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014062820140529
1976491neon2gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014062820140529
1976534neon2gcc -funroll-loops -O3 -fomit-frame-pointer2014062820140529
1979110neon2gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014062820140529
1986986neon2gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014062820140529
1990336neon2gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014062820140529
2002116neon2gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014062820140529
9214674ref10gcc -fno-schedule-insns -O3 -fomit-frame-pointer2014062820140529
9219698ref10gcc -fno-schedule-insns -O2 -fomit-frame-pointer2014062820140529
9286086ref10gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014062820140529
9306291ref10gcc -Os -fomit-frame-pointer2014062820140529
9306699ref10gcc -fno-schedule-insns -Os -fomit-frame-pointer2014062820140529
9342807ref10gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014062820140529
9342866ref10gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014062820140529
9369693ref10gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014062820140529
9370186ref10gcc -funroll-loops -Os -fomit-frame-pointer2014062820140529
9481445ref10gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014062820140529
9500597ref10gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014062820140529
9691488ref10gcc -mcpu=arm8 -Os -fomit-frame-pointer2014062820140529
9691757ref10gcc -mcpu=arm810 -Os -fomit-frame-pointer2014062820140529
9703542ref10gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014062820140529
9703681ref10gcc -mcpu=strongarm -Os -fomit-frame-pointer2014062820140529
9707637ref10gcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014062820140529
10516976ref10gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014062820140529
10741606ref10gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014062820140529
10745920ref10gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014062820140529
11514158ref10gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014062820140529
11517595ref10gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014062820140529
11612559ref10gcc -funroll-loops -O2 -fomit-frame-pointer2014062820140529
11629449ref10gcc -funroll-loops -O3 -fomit-frame-pointer2014062820140529
11664157ref10gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014062820140529
11681528ref10gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014062820140529
12004091ref10gcc -O2 -fomit-frame-pointer2014062820140529
12004703ref10gcc -O3 -fomit-frame-pointer2014062820140529
12391784ref10gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014062820140529
12410559ref10gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014062820140529
12872087ref10gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014062820140529
12872238ref10gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014062820140529
12872344ref10gcc -mcpu=strongarm -O3 -fomit-frame-pointer2014062820140529
12872492ref10gcc -mcpu=strongarm -O2 -fomit-frame-pointer2014062820140529
12872505ref10gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014062820140529
12872600ref10gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014062820140529
12969250ref10gcc -mcpu=arm810 -O3 -fomit-frame-pointer2014062820140529
12969258ref10gcc -mcpu=arm8 -O2 -fomit-frame-pointer2014062820140529
12969302ref10gcc -mcpu=arm8 -O3 -fomit-frame-pointer2014062820140529
12970847ref10gcc -mcpu=arm810 -O2 -fomit-frame-pointer2014062820140529
19659144ref10gcc -mcpu=arm8 -O -fomit-frame-pointer2014062820140529
19659592ref10gcc -mcpu=strongarm -O -fomit-frame-pointer2014062820140529
19659864ref10gcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014062820140529
19660021ref10gcc -mcpu=arm810 -O -fomit-frame-pointer2014062820140529
19660393ref10gcc -mcpu=strongarm110 -O -fomit-frame-pointer2014062820140529
20606526ref10gcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014062820140529
20607129ref10gcc -O -fomit-frame-pointer2014062820140529
20607594ref10gcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014062820140529
20609547ref10gcc -fno-schedule-insns -O -fomit-frame-pointer2014062820140529
20617321ref10gcc -funroll-loops -O -fomit-frame-pointer2014062820140529
20618183ref10gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014062820140529
23327592ref10gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014062820140529
24522321ref10gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014062820140529
42829793ref10gcc2014062820140529
42830738ref10cc2014062820140529
42832438ref10gcc -funroll-loops2014062820140529
76869740refgcc -funroll-loops -O2 -fomit-frame-pointer2014062820140529
83991751refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014062820140529
86211731refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014062820140529
89623037refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014062820140529
89624619refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014062820140529
89625648refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014062820140529
89626170refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014062820140529
89627497refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014062820140529
89928617refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014062820140529
90511005refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014062820140529
90512332refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014062820140529
90532983refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014062820140529
90557720refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014062820140529
90588908refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014062820140529
93225327refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014062820140529
93236349refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014062820140529
93613903refgcc -O2 -fomit-frame-pointer2014062820140529
93614794refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014062820140529
93752701refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014062820140529
93955979refgcc -O3 -fomit-frame-pointer2014062820140529
95536846refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014062820140529
95894223refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014062820140529
96003990refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014062820140529
100424882refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014062820140529
100469660refgcc -funroll-loops -O -fomit-frame-pointer2014062820140529
102145976refgcc -mcpu=strongarm -O -fomit-frame-pointer2014062820140529
102152239refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014062820140529
102160026refgcc -mcpu=arm8 -O -fomit-frame-pointer2014062820140529
102160364refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014062820140529
102161867refgcc -mcpu=arm810 -O -fomit-frame-pointer2014062820140529
106219046refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014062820140529
106356763refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014062820140529
106383600refgcc -fno-schedule-insns -O -fomit-frame-pointer2014062820140529
106393860refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014062820140529
106396389refgcc -O -fomit-frame-pointer2014062820140529
106409229refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014062820140529
119077951refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014062820140529
119095118refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014062820140529
119096606refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014062820140529
119107517refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014062820140529
119109112refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014062820140529
122207666refgcc -funroll-loops -Os -fomit-frame-pointer2014062820140529
122214058refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014062820140529
124686746refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014062820140529
124861094refgcc -Os -fomit-frame-pointer2014062820140529
124866748refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014062820140529
125701710refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014062820140529
125718235refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014062820140529
125927899refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014062820140529
354500043refgcc -funroll-loops2014062820140529
354502779refcc2014062820140529
354514938refgcc2014062820140529

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: cc
smult.c: smult.c:34:1: error: unable to emulate 'TI'
smult.c: smult.c: In function 'fscalar_product':
smult.c: smult.c:76:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:79:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:82:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:85:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:88:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c: In function 'fmul':
smult.c: smult.c:132:19: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:133:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:134:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:135:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:136:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c: In function 'fsquare_times':
smult.c: smult.c:173:21: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:174:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:175:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:176:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:177:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c: In function 'fcontract':
smult.c: smult.c:213:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:214:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:215:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:216:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:217:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: ...

Number of similar (compiler,implementation) pairs: 35, namely:
CompilerImplementations
cc donna_c64
gcc donna_c64
gcc -O2 -fomit-frame-pointer donna_c64
gcc -O3 -fomit-frame-pointer donna_c64
gcc -O -fomit-frame-pointer donna_c64
gcc -Os -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -O2 -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -O3 -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -O -fomit-frame-pointer donna_c64
gcc -fno-schedule-insns -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops donna_c64
gcc -funroll-loops -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -Os -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer donna_c64
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a5 -Os -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -Os -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer donna_c64
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer donna_c64

Compiler output

Implementation: crypto_scalarmult/curve25519/ref
Compiler: gcc -funroll-loops -O3 -fomit-frame-pointer
smult.c:
smult.c: cc1: out of memory allocating 28588 bytes after a total of 6795264 bytes

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_scalarmult/curve25519/ref
Compiler: gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer
smult.c:
smult.c: cc1: out of memory allocating 208 bytes after a total of 6848512 bytes

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_scalarmult/curve25519/ref10
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
base.c: base.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_0.c: fe_0.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_1.c: fe_1.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_add.c: fe_add.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_copy.c: fe_copy.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_cswap.c: fe_cswap.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_frombytes.c: fe_frombytes.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_invert.c: fe_invert.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_mul.c: fe_mul.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_mul121666.c: fe_mul121666.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_sq.c: fe_sq.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_sub.c: fe_sub.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
fe_tobytes.c: fe_tobytes.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
scalarmult.c: scalarmult.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer ref10
gcc -mcpu=arm810 -O3 -fomit-frame-pointer ref10
gcc -mcpu=arm810 -O -fomit-frame-pointer ref10
gcc -mcpu=arm810 -Os -fomit-frame-pointer ref10
gcc -mcpu=arm8 -O2 -fomit-frame-pointer ref10
gcc -mcpu=arm8 -O3 -fomit-frame-pointer ref10
gcc -mcpu=arm8 -O -fomit-frame-pointer ref10
gcc -mcpu=arm8 -Os -fomit-frame-pointer ref10
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer ref10
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer ref10
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer ref10
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer ref10
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer ref10
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer ref10
gcc -mcpu=strongarm110 -O -fomit-frame-pointer ref10
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer ref10
gcc -mcpu=strongarm -O2 -fomit-frame-pointer ref10
gcc -mcpu=strongarm -O3 -fomit-frame-pointer ref10
gcc -mcpu=strongarm -O -fomit-frame-pointer ref10
gcc -mcpu=strongarm -Os -fomit-frame-pointer ref10

Compiler output

Implementation: crypto_scalarmult/curve25519/neon2
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
base.c: base.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
scalarmult.s: scalarmult.s: Assembler messages:
scalarmult.s: scalarmult.s:520: Error: selected processor does not support ARM mode `strd r4,[sp,#0]'
scalarmult.s: scalarmult.s:525: Error: selected processor does not support ARM mode `strd r6,[sp,#8]'
scalarmult.s: scalarmult.s:530: Error: selected processor does not support ARM mode `strd r8,[sp,#16]'
scalarmult.s: scalarmult.s:535: Error: selected processor does not support ARM mode `strd r10,[sp,#24]'
scalarmult.s: scalarmult.s:11121: Error: selected processor does not support ARM mode `ldrd r4,[sp,#0]'
scalarmult.s: scalarmult.s:11126: Error: selected processor does not support ARM mode `ldrd r6,[sp,#8]'
scalarmult.s: scalarmult.s:11131: Error: selected processor does not support ARM mode `ldrd r8,[sp,#16]'
scalarmult.s: scalarmult.s:11136: Error: selected processor does not support ARM mode `ldrd r10,[sp,#24]'

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer neon2
gcc -mcpu=arm810 -O3 -fomit-frame-pointer neon2
gcc -mcpu=arm810 -O -fomit-frame-pointer neon2
gcc -mcpu=arm810 -Os -fomit-frame-pointer neon2
gcc -mcpu=arm8 -O2 -fomit-frame-pointer neon2
gcc -mcpu=arm8 -O3 -fomit-frame-pointer neon2
gcc -mcpu=arm8 -O -fomit-frame-pointer neon2
gcc -mcpu=arm8 -Os -fomit-frame-pointer neon2
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer neon2
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer neon2
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer neon2
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer neon2
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer neon2
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer neon2
gcc -mcpu=strongarm110 -O -fomit-frame-pointer neon2
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer neon2
gcc -mcpu=strongarm -O2 -fomit-frame-pointer neon2
gcc -mcpu=strongarm -O3 -fomit-frame-pointer neon2
gcc -mcpu=strongarm -O -fomit-frame-pointer neon2
gcc -mcpu=strongarm -Os -fomit-frame-pointer neon2

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
base.c: base.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
smult.c: smult.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
smult.c: smult.c:34:1: error: unable to emulate 'TI'
smult.c: smult.c: In function 'fscalar_product':
smult.c: smult.c:76:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:79:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:82:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:85:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:88:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c: In function 'fmul':
smult.c: smult.c:132:19: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:133:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:134:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:135:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:136:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c: In function 'fsquare_times':
smult.c: smult.c:173:21: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:174:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:175:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:176:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:177:5: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c: In function 'fcontract':
smult.c: smult.c:213:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:214:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:215:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: smult.c:216:3: warning: right shift count >gt;= width of type [enabled by default]
smult.c: ...

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=arm810 -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=arm810 -O -fomit-frame-pointer donna_c64
gcc -mcpu=arm810 -Os -fomit-frame-pointer donna_c64
gcc -mcpu=arm8 -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=arm8 -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=arm8 -O -fomit-frame-pointer donna_c64
gcc -mcpu=arm8 -Os -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm110 -O -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm -O2 -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm -O3 -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm -O -fomit-frame-pointer donna_c64
gcc -mcpu=strongarm -Os -fomit-frame-pointer donna_c64

Compiler output

Implementation: crypto_scalarmult/curve25519/ref
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
base.c: base.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
smult.c: smult.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
try.c: try-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
measure.c: measure-anything.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]

Number of similar (compiler,implementation) pairs: 20, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer ref
gcc -mcpu=arm810 -O3 -fomit-frame-pointer ref
gcc -mcpu=arm810 -O -fomit-frame-pointer ref
gcc -mcpu=arm810 -Os -fomit-frame-pointer ref
gcc -mcpu=arm8 -O2 -fomit-frame-pointer ref
gcc -mcpu=arm8 -O3 -fomit-frame-pointer ref
gcc -mcpu=arm8 -O -fomit-frame-pointer ref
gcc -mcpu=arm8 -Os -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer ref
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -O -fomit-frame-pointer ref
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer ref
gcc -mcpu=strongarm -O2 -fomit-frame-pointer ref
gcc -mcpu=strongarm -O3 -fomit-frame-pointer ref
gcc -mcpu=strongarm -O -fomit-frame-pointer ref
gcc -mcpu=strongarm -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_scalarmult/curve25519/ref
Compiler: gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer
smult.c:
smult.c: cc1: out of memory allocating 624 bytes after a total of 6057984 bytes

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer ref