Implementation notes: armeabi, h7beagle, crypto_dh/curve25519

Computer: h7beagle
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20140622
Operation: crypto_dh
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
1843534refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014071620140622
1943622refgcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer2014071620140622
1947793refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014071620140622
1948461refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014071620140622
1948802refgcc -funroll-loops -O -fomit-frame-pointer2014071620140622
1957137refgcc -mcpu=arm810 -O3 -fomit-frame-pointer2014071620140622
1957418refgcc -O3 -fomit-frame-pointer2014071620140622
1957698refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014071620140622
1957952refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer2014071620140622
1958509refgcc -funroll-loops -O2 -fomit-frame-pointer2014071620140622
1960655refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014071620140622
1962922refgcc -mcpu=strongarm110 -O3 -fomit-frame-pointer2014071620140622
1962988refgcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer2014071620140622
1963042refgcc -mcpu=arm8 -O3 -fomit-frame-pointer2014071620140622
1965446refgcc -mcpu=strongarm -O3 -fomit-frame-pointer2014071620140622
1971224refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2014071620140622
1972163refgcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014071620140622
1972182refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer2014071620140622
1973063refgcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer2014071620140622
1973105refgcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer2014071620140622
1973472refgcc -mcpu=strongarm1100 -O -fomit-frame-pointer2014071620140622
1974425refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer2014071620140622
1976239refgcc -O2 -fomit-frame-pointer2014071620140622
1977541refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2014071620140622
1977657refgcc -funroll-loops -O3 -fomit-frame-pointer2014071620140622
1979126refgcc -mcpu=strongarm -O2 -fomit-frame-pointer2014071620140622
1979495refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014071620140622
1979792refgcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer2014071620140622
1981872refgcc -mcpu=strongarm -O -fomit-frame-pointer2014071620140622
1987868refgcc -mcpu=arm8 -O -fomit-frame-pointer2014071620140622
1987931refgcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer2014071620140622
1989147refgcc -mcpu=arm8 -O2 -fomit-frame-pointer2014071620140622
1989371refgcc -mcpu=arm810 -O2 -fomit-frame-pointer2014071620140622
1989412refgcc -mcpu=strongarm110 -O2 -fomit-frame-pointer2014071620140622
1989772refgcc -Os -fomit-frame-pointer2014071620140622
1991415refgcc -O -fomit-frame-pointer2014071620140622
1991767refgcc -mcpu=arm810 -O -fomit-frame-pointer2014071620140622
1992104refgcc -mcpu=strongarm110 -O -fomit-frame-pointer2014071620140622
1992703refgcc -funroll-loops -Os -fomit-frame-pointer2014071620140622
1993030refgcc -fno-schedule-insns -Os -fomit-frame-pointer2014071620140622
1993207refgcc -mcpu=cortex-a9 -Os -fomit-frame-pointer2014071620140622
1993282refgcc -mcpu=arm8 -Os -fomit-frame-pointer2014071620140622
1993341refgcc -mcpu=strongarm -Os -fomit-frame-pointer2014071620140622
1993352refgcc -mcpu=cortex-a5 -Os -fomit-frame-pointer2014071620140622
1993366refgcc -mcpu=strongarm1100 -Os -fomit-frame-pointer2014071620140622
1993417refgcc -mcpu=strongarm110 -Os -fomit-frame-pointer2014071620140622
1993427refgcc -mcpu=arm810 -Os -fomit-frame-pointer2014071620140622
1995917refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014071620140622
1996186refgcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -Os -fomit-frame-pointer2014071620140622
1996234refgcc -mcpu=cortex-a5 -O -fomit-frame-pointer2014071620140622
2001168refgcc -fno-schedule-insns -O -fomit-frame-pointer2014071620140622
2001384refgcc -mcpu=cortex-a9 -O -fomit-frame-pointer2014071620140622
2025313refgcc2014071620140622
2025360refcc2014071620140622
2044473refgcc -funroll-loops2014071620140622

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: cc
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_1':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_2':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_3':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_4':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_5':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_6':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_7':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_8':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `sqr_9':
try.c: ...

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc mpfq
gcc mpfq
gcc -funroll-loops mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -O2 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 906696 bytes after a total of 6086656 bytes

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a9 -O2 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -O3 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 117000 bytes after a total of 4698112 bytes

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -O3 -fomit-frame-pointer mpfq
gcc -funroll-loops -O3 -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a5 -O3 -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a9 -O3 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -O -fomit-frame-pointer
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq_keypair':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_field_clear':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_write':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_get_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_read':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_set_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_inv':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o):mpfq_p_25519.c:(.text+0x...): more undefined references to `__gmpn_clz_tab' follow
try.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -O -fomit-frame-pointer mpfq
gcc -fno-schedule-insns -O -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a5 -O -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a9 -O -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -Os -fomit-frame-pointer
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq_keypair':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(curve25519.o): In function `mpfq_p_25519_sqr':
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(curve25519.o): In function `ECmul':
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_cmp_ui'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_cmp_ui'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_tstbit'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_tstbit'
try.c: crypto_dh_curve25519.a(curve25519.o): In function `read_mp':
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpn_set_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_normalize':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_tdiv_qr'
try.c: ...

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -fno-schedule-insns -O2 -fomit-frame-pointer
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq_keypair':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_write':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_get_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_read':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_set_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_inv':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_random':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_random'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_tdiv_qr'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_random2':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_random2'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_tdiv_qr'
try.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -fno-schedule-insns -O2 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -fno-schedule-insns -O3 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 117000 bytes after a total of 4685824 bytes

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -funroll-loops -O2 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 4072 bytes after a total of 5820416 bytes

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -funroll-loops -O -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 4072 bytes after a total of 6569984 bytes

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 4072 bytes after a total of 5816320 bytes

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 117000 bytes after a total of 4689920 bytes

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 4072 bytes after a total of 6578176 bytes

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
curve25519.c: curve25519.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
curve25519.c:
curve25519.c: cc1: out of memory allocating 906696 bytes after a total of 6365184 bytes

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -mcpu=arm810 -O2 -fomit-frame-pointer mpfq
gcc -mcpu=arm8 -O2 -fomit-frame-pointer mpfq
gcc -mcpu=strongarm1100 -O2 -fomit-frame-pointer mpfq
gcc -mcpu=strongarm110 -O2 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/ref
Compiler: gcc -mcpu=arm810 -O2 -fomit-frame-pointer
usesmult.c: usesmult.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_dh/curve25519/mpfq
Compiler: gcc -mcpu=arm810 -O3 -fomit-frame-pointer
curve25519.c: curve25519.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
curve25519.c:
curve25519.c: cc1: out of memory allocating 188108 bytes after a total of 4698112 bytes

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
gcc -mcpu=arm810 -O3 -fomit-frame-pointer mpfq
gcc -mcpu=arm8 -O3 -fomit-frame-pointer mpfq
gcc -mcpu=strongarm1100 -O3 -fomit-frame-pointer mpfq
gcc -mcpu=strongarm110 -O3 -fomit-frame-pointer mpfq
gcc -mcpu=strongarm -O3 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=arm810 -O -fomit-frame-pointer
curve25519.c: curve25519.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
keysharing.c: keysharing.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
mpfq_p_25519.c: mpfq_p_25519.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: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq_keypair':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_field_clear':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_write':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_get_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_read':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_set_str'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_inv':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_clz_tab'
try.c: crypto_dh_curve25519.a(mpfq_p_25519.o): In function `mpfq_p_25519_random':
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_random'
try.c: mpfq_p_25519.c:(.text+0x...): undefined reference to `__gmpn_tdiv_qr'
try.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
gcc -mcpu=arm810 -O -fomit-frame-pointer mpfq
gcc -mcpu=arm8 -O -fomit-frame-pointer mpfq
gcc -mcpu=strongarm1100 -O -fomit-frame-pointer mpfq
gcc -mcpu=strongarm110 -O -fomit-frame-pointer mpfq
gcc -mcpu=strongarm -O -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=arm810 -Os -fomit-frame-pointer
curve25519.c: curve25519.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
keysharing.c: keysharing.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
mpfq_p_25519.c: mpfq_p_25519.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: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq_keypair':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(keysharing.o): In function `crypto_dh_curve25519_mpfq':
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_init_set_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_mul_2exp'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_add_ui'
try.c: keysharing.c:(.text+0x...): undefined reference to `__gmpz_clear'
try.c: crypto_dh_curve25519.a(curve25519.o): In function `mpfq_p_25519_sqr':
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpn_lshift'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpn_add_n'
try.c: crypto_dh_curve25519.a(curve25519.o): In function `ECmul':
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_cmp_ui'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_cmp_ui'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_tstbit'
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpz_tstbit'
try.c: crypto_dh_curve25519.a(curve25519.o): In function `read_mp':
try.c: curve25519.c:(.text+0x...): undefined reference to `__gmpn_set_str'
try.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
gcc -mcpu=arm810 -Os -fomit-frame-pointer mpfq
gcc -mcpu=arm8 -Os -fomit-frame-pointer mpfq
gcc -mcpu=strongarm1100 -Os -fomit-frame-pointer mpfq
gcc -mcpu=strongarm110 -Os -fomit-frame-pointer mpfq
gcc -mcpu=strongarm -Os -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 906696 bytes after a total of 6184960 bytes

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=cortex-a5 -O2 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer
curve25519.c:
curve25519.c: cc1: out of memory allocating 906696 bytes after a total of 6193152 bytes

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer mpfq
gcc -mcpu=cortex-a9 -mfloat-abi=hard -mfpu=neon -O2 -fomit-frame-pointer mpfq

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=cortex-a8 -mfloat-abi=hard -mfpu=neon -O3 -fomit-frame-pointer
curve25519.c: virtual memory exhausted: Cannot allocate memory

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

Compiler output

Implementation: crypto_dh/curve25519/mpfq
Compiler: gcc -mcpu=strongarm -O2 -fomit-frame-pointer
curve25519.c: curve25519.c:1:0: warning: target CPU does not support THUMB instructions [enabled by default]
curve25519.c:
curve25519.c: cc1: out of memory allocating 906696 bytes after a total of 6361088 bytes

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -mcpu=strongarm -O2 -fomit-frame-pointer mpfq