Implementation notes: armeabi, odroid, crypto_hash/whirlpool

Computer: odroid
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: whirlpool
TimeImplementationCompilerBenchmark dateSUPERCOP version
274553refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016082420160806
284166refgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016082420160806
327052refgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016082420160806
387656refgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016082420160806
466242refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016082420160806

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `crypto_hash_whirlpool_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::IteratedHashWithStaticTransform()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEC2Ev[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEC2Ev]+0x10): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEC2Ev[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEC2Ev]+0x58): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::ClonableImplgt;, 64u, CryptoPP::HashTransformation>gt;, CryptoPP::Whirlpool>gt; >gt;::Clone() const':
try.cpp: hash.cpp:(.text._ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv[_ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv]+0x1c): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: hash.cpp:(.text._ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv[_ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv]+0x20): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv]+0x4): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::HashEndianCorrectedBlock(unsigned long long const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy]+0x4): undefined reference to `CryptoPP::Whirlpool::Transform(unsigned long long*, unsigned long long const*)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments cryptopp

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: g++ -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `crypto_hash_whirlpool_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Whirlpool::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::HashEndianCorrectedBlock(unsigned long long const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy]+0x4): undefined reference to `CryptoPP::Whirlpool::Transform(unsigned long long*, unsigned long long const*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv]+0x4): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::ClonableImplgt;, 64u, CryptoPP::HashTransformation>gt;, CryptoPP::Whirlpool>gt; >gt;::Clone() const':
try.cpp: hash.cpp:(.text._ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv[_ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv]+0x120): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
g++ -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv cryptopp
g++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv cryptopp

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: g++ -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `crypto_hash_whirlpool_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::HashEndianCorrectedBlock(unsigned long long const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy]+0x8): undefined reference to `CryptoPP::Whirlpool::Transform(unsigned long long*, unsigned long long const*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv]+0x8): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::ClonableImplgt;, 64u, CryptoPP::HashTransformation>gt;, CryptoPP::Whirlpool>gt; >gt;::Clone() const':
try.cpp: hash.cpp:(.text._ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv[_ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv]+0x1b0): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv cryptopp

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: g++ -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `crypto_hash_whirlpool_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::HashEndianCorrectedBlock(unsigned long long const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE24HashEndianCorrectedBlockEPKy]+0x4): undefined reference to `CryptoPP::Whirlpool::Transform(unsigned long long*, unsigned long long const*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EE4InitEv]+0x4): undefined reference to `CryptoPP::Whirlpool::InitState(unsigned long long*)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 64u, CryptoPP::Whirlpool, 0u, false>gt;::IteratedHashWithStaticTransform()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEC2Ev[_ZN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEC5Ev]+0x14): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: crypto_hash_whirlpool.a(hash.o): In function `CryptoPP::ClonableImplgt;, 64u, CryptoPP::HashTransformation>gt;, CryptoPP::Whirlpool>gt; >gt;::Clone() const':
try.cpp: hash.cpp:(.text._ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv[_ZNK8CryptoPP12ClonableImplINS_9WhirlpoolENS_13AlgorithmImplINS_12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEES1_EEE5CloneEv]+0x60): undefined reference to `vtable for CryptoPP::Whirlpool'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIyNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_whirlpool.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIyNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj64ENS_9WhirlpoolELj0ELb0EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned long long const*, unsigned int)'
try.cpp: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv cryptopp