Implementation notes: amd64, sandy0, crypto_dh/sclaus1024

Computer: sandy0
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_dh
Primitive: sclaus1024
TimeImplementationCompilerBenchmark dateSUPERCOP version
1489224cryptoppg++ -m64 -Os -fomit-frame-pointer2012032920120316
1489368cryptoppg++ -m64 -march=k8 -O3 -fomit-frame-pointer2012032920120316
1491748cryptoppg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012032920120316
1492232cryptoppg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2012032920120316
1493808cryptoppg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2012032920120316
1494304cryptoppg++ -march=barcelona -O -fomit-frame-pointer2012032920120316
1494748cryptoppg++ -march=nocona -O2 -fomit-frame-pointer2012032920120316
1495024cryptoppg++ -m64 -march=core-avx-i -O -fomit-frame-pointer2012032920120316
1495416cryptoppg++ -march=nocona -Os -fomit-frame-pointer2012032920120316
1495548cryptoppg++ -O3 -fomit-frame-pointer2012032920120316
1496196cryptoppg++ -fno-schedule-insns -O2 -fomit-frame-pointer2012032920120316
1496236cryptoppg++ -march=k8 -O2 -fomit-frame-pointer2012032920120316
1496580cryptoppg++ -m64 -O3 -fomit-frame-pointer2012032920120316
1496600cryptoppg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2012032920120316
1497172cryptoppg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2012032920120316
1497300cryptoppg++ -m64 -march=nocona -O2 -fomit-frame-pointer2012032920120316
1497388cryptoppg++ -m64 -march=core2 -O2 -fomit-frame-pointer2012032920120316
1497680cryptoppg++ -m64 -march=k8 -O2 -fomit-frame-pointer2012032920120316
1498204cryptoppg++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer2012032920120316
1498640cryptoppg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012032920120316
1498712cryptoppg++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer2012032920120316
1498776cryptoppg++ -march=nocona -O -fomit-frame-pointer2012032920120316
1499148cryptoppg++ -O2 -fomit-frame-pointer2012032920120316
1499300cryptoppg++ -fno-schedule-insns -O -fomit-frame-pointer2012032920120316
1500120cryptoppg++ -O -fomit-frame-pointer2012032920120316
1500304cryptoppg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012032920120316
1500320cryptoppg++ -m64 -march=nocona -O -fomit-frame-pointer2012032920120316
1500404cryptoppg++ -m64 -march=barcelona -Os -fomit-frame-pointer2012032920120316
1500560cryptoppg++ -m64 -march=corei7 -O -fomit-frame-pointer2012032920120316
1502228cryptoppg++ -m64 -march=barcelona -O -fomit-frame-pointer2012032920120316
1503272cryptoppg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2012032920120316
1503464cryptoppg++ -march=barcelona -O2 -fomit-frame-pointer2012032920120316
1503832cryptoppg++ -m64 -march=corei7-avx -O -fomit-frame-pointer2012032920120316
1505864cryptoppg++ -m64 -O -fomit-frame-pointer2012032920120316
1507096cryptoppg++ -m64 -march=core-avx-i -Os -fomit-frame-pointer2012032920120316
1507300cryptoppg++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer2012032920120316
1507348cryptoppg++ -Os -fomit-frame-pointer2012032920120316
1507836cryptoppg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2012032920120316
1511164cryptoppg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2012032920120316
1512048cryptoppg++ -march=barcelona -O3 -fomit-frame-pointer2012032920120316
1513588cryptoppg++ -march=barcelona -Os -fomit-frame-pointer2012032920120316
1515092cryptoppg++ -march=k8 -O -fomit-frame-pointer2012032920120316
1515480cryptoppg++ -march=k8 -O3 -fomit-frame-pointer2012032920120316
1516684cryptoppg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012032920120316
1516808cryptoppg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012032920120316
1517288cryptoppg++ -m64 -march=core2 -Os -fomit-frame-pointer2012032920120316
1521300cryptoppg++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2012032920120316
1521304cryptoppg++ -m64 -march=k8 -Os -fomit-frame-pointer2012032920120316
1522688cryptoppg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2012032920120316
1524488cryptoppg++ -m64 -march=corei7 -O3 -fomit-frame-pointer2012032920120316
1525024cryptoppg++2012032920120316
1525240cryptoppg++ -fno-schedule-insns -O3 -fomit-frame-pointer2012032920120316
1525348cryptoppg++ -fno-schedule-insns -Os -fomit-frame-pointer2012032920120316
1527556cryptoppg++ -m64 -march=core2 -O3 -fomit-frame-pointer2012032920120316
1530916cryptoppg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012032920120316
1532124cryptoppg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2012032920120316
1534716cryptoppg++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012032920120316
1535536cryptoppg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2012032920120316
1538084cryptoppg++ -m64 -march=corei7-avx -Os -fomit-frame-pointer2012032920120316
1538592cryptoppg++ -m64 -march=nocona -O3 -fomit-frame-pointer2012032920120316
1541920cryptoppg++ -m64 -march=corei7 -O2 -fomit-frame-pointer2012032920120316
1543968cryptoppg++ -m64 -O2 -fomit-frame-pointer2012032920120316
1553820cryptoppg++ -m64 -march=core2 -O -fomit-frame-pointer2012032920120316
1555068cryptoppg++ -march=nocona -O3 -fomit-frame-pointer2012032920120316
1577536cryptoppg++ -march=k8 -Os -fomit-frame-pointer2012032920120316
1579680cryptoppg++ -m64 -march=k8 -O -fomit-frame-pointer2012032920120316
1580244cryptoppg++ -m64 -march=nocona -Os -fomit-frame-pointer2012032920120316
1583900cryptoppg++ -m64 -march=corei7 -Os -fomit-frame-pointer2012032920120316
1608708cryptoppg++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer2012032920120316

Compiler output

Implementation: crypto_dh/sclaus1024/gmp
Compiler: g++
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::__gmp_expr()':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_EC2Ev[_ZN10__gmp_exprIA1_12__mpz_structS1_EC5Ev]+0x14): undefined reference to `__gmpz_init'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::__gmp_expr(int)':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_EC2Ei[_ZN10__gmp_exprIA1_12__mpz_structS1_EC5Ei]+0x20): undefined reference to `__gmpz_init_set_si'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::~__gmp_expr()':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_ED2Ev[_ZN10__gmp_exprIA1_12__mpz_structS1_ED5Ev]+0x14): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::operator=(char const*)':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_EaSEPKc[__gmp_exprgt;::operator=(char const*)]+0x27): undefined reference to `__gmpz_set_str'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ gmp

Compiler output

Implementation: crypto_dh/sclaus1024/gmp
Compiler: g++ -O2 -fomit-frame-pointer
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init_set_si'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::~__gmp_expr()':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_ED2Ev[_ZN10__gmp_exprIA1_12__mpz_structS1_ED5Ev]+0x1): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o):sharedsecret.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 32, namely:
CompilerImplementations
g++ -O2 -fomit-frame-pointer gmp
g++ -O3 -fomit-frame-pointer gmp
g++ -fno-schedule-insns -O2 -fomit-frame-pointer gmp
g++ -fno-schedule-insns -O3 -fomit-frame-pointer gmp
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer gmp
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer gmp
g++ -m64 -O2 -fomit-frame-pointer gmp
g++ -m64 -O3 -fomit-frame-pointer gmp
g++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer gmp
g++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer gmp
g++ -m64 -march=core2 -O2 -fomit-frame-pointer gmp
g++ -m64 -march=core2 -O3 -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer gmp
g++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer gmp
g++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer gmp
g++ -m64 -march=corei7 -O2 -fomit-frame-pointer gmp
g++ -m64 -march=corei7 -O3 -fomit-frame-pointer gmp
g++ -m64 -march=k8 -O2 -fomit-frame-pointer gmp
g++ -m64 -march=k8 -O3 -fomit-frame-pointer gmp
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer gmp
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer gmp
g++ -m64 -march=nocona -O2 -fomit-frame-pointer gmp
g++ -m64 -march=nocona -O3 -fomit-frame-pointer gmp
g++ -march=barcelona -O2 -fomit-frame-pointer gmp
g++ -march=barcelona -O3 -fomit-frame-pointer gmp
g++ -march=k8 -O2 -fomit-frame-pointer gmp
g++ -march=k8 -O3 -fomit-frame-pointer gmp
g++ -march=nocona -O2 -fomit-frame-pointer gmp
g++ -march=nocona -O3 -fomit-frame-pointer gmp

Compiler output

Implementation: crypto_dh/sclaus1024/gmp
Compiler: g++ -O -fomit-frame-pointer
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init_set_si'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o):keypair.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o):sharedsecret.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 32, namely:
CompilerImplementations
g++ -O -fomit-frame-pointer gmp
g++ -Os -fomit-frame-pointer gmp
g++ -fno-schedule-insns -O -fomit-frame-pointer gmp
g++ -fno-schedule-insns -Os -fomit-frame-pointer gmp
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer gmp
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer gmp
g++ -m64 -O -fomit-frame-pointer gmp
g++ -m64 -Os -fomit-frame-pointer gmp
g++ -m64 -march=core-avx-i -O -fomit-frame-pointer gmp
g++ -m64 -march=core-avx-i -Os -fomit-frame-pointer gmp
g++ -m64 -march=core2 -O -fomit-frame-pointer gmp
g++ -m64 -march=core2 -Os -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer gmp
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer gmp
g++ -m64 -march=corei7-avx -O -fomit-frame-pointer gmp
g++ -m64 -march=corei7-avx -Os -fomit-frame-pointer gmp
g++ -m64 -march=corei7 -O -fomit-frame-pointer gmp
g++ -m64 -march=corei7 -Os -fomit-frame-pointer gmp
g++ -m64 -march=k8 -O -fomit-frame-pointer gmp
g++ -m64 -march=k8 -Os -fomit-frame-pointer gmp
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer gmp
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer gmp
g++ -m64 -march=nocona -O -fomit-frame-pointer gmp
g++ -m64 -march=nocona -Os -fomit-frame-pointer gmp
g++ -march=barcelona -O -fomit-frame-pointer gmp
g++ -march=barcelona -Os -fomit-frame-pointer gmp
g++ -march=k8 -O -fomit-frame-pointer gmp
g++ -march=k8 -Os -fomit-frame-pointer gmp
g++ -march=nocona -O -fomit-frame-pointer gmp
g++ -march=nocona -Os -fomit-frame-pointer gmp

Compiler output

Implementation: crypto_dh/sclaus1024/gmp
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init_set_si'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::~__gmp_expr()':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_ED2Ev[_ZN10__gmp_exprIA1_12__mpz_structS1_ED5Ev]+0x1): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o):sharedsecret.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: collect2: ld returned 1 exit status
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init_set_si'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `__gmp_exprgt;::~__gmp_expr()':
try.cpp: keypair.cpp:(.text._ZN10__gmp_exprIA1_12__mpz_structS1_ED2Ev[_ZN10__gmp_exprIA1_12__mpz_structS1_ED5Ev]+0x1): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o):sharedsecret.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
g++ -m64 -march=barcelona -O2 -fomit-frame-pointer gmp
g++ -m64 -march=barcelona -O3 -fomit-frame-pointer gmp

Compiler output

Implementation: crypto_dh/sclaus1024/gmp
Compiler: g++ -m64 -march=barcelona -O -fomit-frame-pointer
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init_set_si'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o):keypair.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o):sharedsecret.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: collect2: ld returned 1 exit status
try.cpp: crypto_dh_sclaus1024.a(keypair.o): In function `crypto_dh_sclaus1024_gmp_keypair':
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init_set_si'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: keypair.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(keypair.o):keypair.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o): In function `crypto_dh_sclaus1024_gmp':
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_set_str'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_init'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_import'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_powm'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_sizeinbase'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_export'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: sharedsecret.cpp:(.text+0x...): undefined reference to `__gmpz_clear'
try.cpp: crypto_dh_sclaus1024.a(sharedsecret.o):sharedsecret.cpp:(.text+0x...): more undefined references to `__gmpz_clear' follow
try.cpp: collect2: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
g++ -m64 -march=barcelona -O -fomit-frame-pointer gmp
g++ -m64 -march=barcelona -Os -fomit-frame-pointer gmp