Implementation notes: amd64, kizomba, crypto_hash/whirlpool

Computer: kizomba
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_hash
Primitive: whirlpool
TimeImplementationCompilerBenchmark dateSUPERCOP version
34625cryptoppclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018082020180818
34625cryptoppclang++ -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
34647cryptoppclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018082020180818
34647cryptoppclang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
34649cryptoppclang++ -O3 -fomit-frame-pointer -Qunused-arguments2018082020180818
34671cryptoppclang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018082020180818
34927cryptoppclang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
35016cryptoppclang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018082020180818
35401cryptoppclang++ -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
35710cryptoppclang++ -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018082020180818
43697refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2018082020180818
44653refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2018082020180818
45250refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2018082020180818
46699refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2018082020180818
46728refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2018082020180818
46960refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2018082020180818
47000refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2018082020180818
47242refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2018082020180818
47575refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2018082020180818
47724refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2018082020180818
47994refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2018082020180818
48435refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2018082020180818
48472refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2018082020180818
48512refgcc -funroll-loops -O2 -fomit-frame-pointer2018082020180818
48633refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2018082020180818
48742refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2018082020180818
48782refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2018082020180818
48798refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2018082020180818
48871refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2018082020180818
48923refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2018082020180818
48947refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2018082020180818
49101refgcc -march=nocona -O2 -fomit-frame-pointer2018082020180818
49219refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2018082020180818
49254refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2018082020180818
49274refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2018082020180818
49335refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2018082020180818
49419refgcc -O2 -fomit-frame-pointer2018082020180818
49508refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2018082020180818
49545refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2018082020180818
49585refgcc -m64 -O2 -fomit-frame-pointer2018082020180818
49587refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2018082020180818
49816refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2018082020180818
49901refgcc -march=k8 -O2 -fomit-frame-pointer2018082020180818
49930refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2018082020180818
50440refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2018082020180818
50496refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2018082020180818
50527refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2018082020180818
50619refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2018082020180818
50723refgcc -march=nocona -O3 -fomit-frame-pointer2018082020180818
50911refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2018082020180818
50970refgcc -m64 -march=barcelona -O -fomit-frame-pointer2018082020180818
50984refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2018082020180818
50988refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2018082020180818
50996refgcc -funroll-loops -O3 -fomit-frame-pointer2018082020180818
51052refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2018082020180818
51054refgcc -m64 -O3 -fomit-frame-pointer2018082020180818
51095refgcc -funroll-loops -O -fomit-frame-pointer2018082020180818
51187refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2018082020180818
51208refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2018082020180818
51213refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2018082020180818
51213refgcc -m64 -march=corei7 -O -fomit-frame-pointer2018082020180818
51222refgcc -m64 -march=core2 -O -fomit-frame-pointer2018082020180818
51230refgcc -O3 -fomit-frame-pointer2018082020180818
51250refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2018082020180818
51286refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2018082020180818
51296refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2018082020180818
51298refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2018082020180818
51316refgcc -march=barcelona -O -fomit-frame-pointer2018082020180818
51322refgcc -march=barcelona -O2 -fomit-frame-pointer2018082020180818
51361refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2018082020180818
51361refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2018082020180818
51391refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2018082020180818
51391refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2018082020180818
51397refgcc -funroll-loops -Os -fomit-frame-pointer2018082020180818
51426refgcc -m64 -march=k8 -O -fomit-frame-pointer2018082020180818
51451refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2018082020180818
51486refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2018082020180818
51568refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2018082020180818
51600refgcc -march=k8 -O -fomit-frame-pointer2018082020180818
51619refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2018082020180818
51631refgcc -O -fomit-frame-pointer2018082020180818
51657refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2018082020180818
51681refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2018082020180818
51750refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2018082020180818
51756refgcc -m64 -O -fomit-frame-pointer2018082020180818
51819refgcc -fno-schedule-insns -O -fomit-frame-pointer2018082020180818
51877refgcc -march=nocona -O -fomit-frame-pointer2018082020180818
51899refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2018082020180818
51929refgcc -funroll-loops -m64 -O -fomit-frame-pointer2018082020180818
51961refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2018082020180818
51990refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2018082020180818
52014refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2018082020180818
52026refgcc -m64 -march=nocona -O -fomit-frame-pointer2018082020180818
52035refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2018082020180818
52173refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2018082020180818
52194refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2018082020180818
52488refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2018082020180818
52772refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2018082020180818
52893refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2018082020180818
52899refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2018082020180818
52932refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2018082020180818
52939refgcc -march=k8 -Os -fomit-frame-pointer2018082020180818
52970refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2018082020180818
52978refgcc -m64 -march=k8 -Os -fomit-frame-pointer2018082020180818
53016refgcc -m64 -Os -fomit-frame-pointer2018082020180818
53022refgcc -m64 -march=core2 -Os -fomit-frame-pointer2018082020180818
53024refgcc -Os -fomit-frame-pointer2018082020180818
53131refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2018082020180818
53182refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2018082020180818
53245refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2018082020180818
53435refgcc -fno-schedule-insns -Os -fomit-frame-pointer2018082020180818
53787refgcc -march=barcelona -Os -fomit-frame-pointer2018082020180818
54477refgcc -march=k8 -O3 -fomit-frame-pointer2018082020180818
54637refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2018082020180818
54734refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2018082020180818
54752refgcc -m64 -march=nocona -Os -fomit-frame-pointer2018082020180818
54855refgcc -march=nocona -Os -fomit-frame-pointer2018082020180818
55050refgcc -march=barcelona -O3 -fomit-frame-pointer2018082020180818
55451refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018082020180818
55663refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
58321refclang -O3 -fomit-frame-pointer -Qunused-arguments2018082020180818
59185refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018082020180818
59362refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
59439refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
59714refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018082020180818
59715refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018082020180818
61645refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018082020180818
61738refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018082020180818
110924refgcc -funroll-loops2018082020180818
111539refcc2018082020180818
111696refgcc2018082020180818

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: g++
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(cryptlib.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(integer.o): relocation R_X86_64_32S against symbol `_ZN8CryptoPP18Baseline_Multiply2EPmPKmS2_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(misc.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(queue.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP9ByteQueue6WalkerE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(sha.o): relocation R_X86_64_32 against symbol `_ZN8CryptoPP8SHA256_KE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(algparam.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(iterhash.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(pubkey.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP33PK_SignatureMessageEncodingMethod20MaxRecoverableLengthEmmm' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(whrlpool.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(asn.o): relocation R_X86_64_32 against symbol `_ZN8CryptoPP15DEFAULT_CHANNELB5cxx11E' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(dll.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(gfpcrypt.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP18DERSequenceEncoderE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(modes.o): relocation R_X86_64_32S against symbol `_ZN8CryptoPP14CTR_ModePolicy21IncrementCounterBy256Ev' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(nbtheory.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP7IntegerE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(filters.o): relocation R_X86_64_32 against symbol `_ZTIPN8CryptoPP22BufferedTransformationE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(osrng.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP14NonblockingRngE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(hex.o): relocation R_X86_64_32 against symbol `_ZTIb@@CXXABI_1.3' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(rijndael.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(ecp.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP17ModularArithmetic5EqualERKNS_7IntegerES3_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(gf2n.o): relocation R_X86_64_32 against symbol `_ZGVZNK8CryptoPP9SingletonINS_14PolynomialMod2ENS_9NewObjectIS1_EELi0EE3RefEvE9s_pObject' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(oaep.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP10P1363_MGF115GenerateAndMaskERNS_18HashTransformationEPhmPKhmb' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(rng.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(mqueue.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP12MessageQueue16NumberOfMessagesEv' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(basecode.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(ec2n.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP5GF2NP5EqualERKNS_14PolynomialMod2ES3_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: ...

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

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(cryptlib.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(integer.o): relocation R_X86_64_32S against symbol `_ZN8CryptoPP18Baseline_Multiply2EPmPKmS2_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(misc.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(queue.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP9ByteQueue6WalkerE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(sha.o): relocation R_X86_64_32 against symbol `_ZN8CryptoPP8SHA256_KE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(algparam.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(iterhash.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(pubkey.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP33PK_SignatureMessageEncodingMethod20MaxRecoverableLengthEmmm' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(whrlpool.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(asn.o): relocation R_X86_64_32 against symbol `_ZN8CryptoPP15DEFAULT_CHANNELB5cxx11E' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(dll.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(gfpcrypt.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP18DERSequenceEncoderE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(modes.o): relocation R_X86_64_32S against symbol `_ZN8CryptoPP14CTR_ModePolicy21IncrementCounterBy256Ev' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(nbtheory.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP7IntegerE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(filters.o): relocation R_X86_64_32 against symbol `_ZTIPN8CryptoPP22BufferedTransformationE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(osrng.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP14NonblockingRngE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(hex.o): relocation R_X86_64_32 against symbol `_ZTIb@@CXXABI_1.3' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(rijndael.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(ecp.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP17ModularArithmetic5EqualERKNS_7IntegerES3_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(gf2n.o): relocation R_X86_64_32 against symbol `_ZGVZNK8CryptoPP9SingletonINS_14PolynomialMod2ENS_9NewObjectIS1_EELi0EE3RefEvE9s_pObject' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(oaep.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP10P1363_MGF115GenerateAndMaskERNS_18HashTransformationEPhmPKhmb' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(rng.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(mqueue.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP12MessageQueue16NumberOfMessagesEv' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(basecode.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(ec2n.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP5GF2NP5EqualERKNS_14PolynomialMod2ES3_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: ...
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(cryptlib.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(integer.o): relocation R_X86_64_32S against symbol `_ZN8CryptoPP18Baseline_Multiply2EPmPKmS2_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(misc.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(queue.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP9ByteQueue6WalkerE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(sha.o): relocation R_X86_64_32 against symbol `_ZN8CryptoPP8SHA256_KE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(algparam.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(iterhash.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(pubkey.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP33PK_SignatureMessageEncodingMethod20MaxRecoverableLengthEmmm' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(whrlpool.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(asn.o): relocation R_X86_64_32 against symbol `_ZN8CryptoPP15DEFAULT_CHANNELB5cxx11E' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(dll.o): relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(gfpcrypt.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP18DERSequenceEncoderE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(modes.o): relocation R_X86_64_32S against symbol `_ZN8CryptoPP14CTR_ModePolicy21IncrementCounterBy256Ev' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(nbtheory.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP7IntegerE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(filters.o): relocation R_X86_64_32 against symbol `_ZTIPN8CryptoPP22BufferedTransformationE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(osrng.o): relocation R_X86_64_32S against symbol `_ZTVN8CryptoPP14NonblockingRngE' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(hex.o): relocation R_X86_64_32 against symbol `_ZTIb@@CXXABI_1.3' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(rijndael.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(ecp.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP17ModularArithmetic5EqualERKNS_7IntegerES3_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(gf2n.o): relocation R_X86_64_32 against symbol `_ZGVZNK8CryptoPP9SingletonINS_14PolynomialMod2ENS_9NewObjectIS1_EELi0EE3RefEvE9s_pObject' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(oaep.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP10P1363_MGF115GenerateAndMaskERNS_18HashTransformationEPhmPKhmb' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(rng.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(mqueue.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP12MessageQueue16NumberOfMessagesEv' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(basecode.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.cpp: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libcryptopp.a(ec2n.o): relocation R_X86_64_32S against symbol `_ZNK8CryptoPP5GF2NP5EqualERKNS_14PolynomialMod2ES3_' can not be used when making a PIE object; recompile with -fPIC
try.cpp: ...

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