Implementation notes: armeabi, odroid, crypto_hash/sha256

Computer: odroid
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20160806
Operation: crypto_hash
Primitive: sha256
TimeImplementationCompilerBenchmark dateSUPERCOP version
26153opensslclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016082420160806
26233opensslgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016082420160806
26875opensslgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016082420160806
26888opensslgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016082420160806
26890opensslgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016082420160806
40292sphlibgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016082420160806
40335sphlibgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016082420160806
41206refgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016082420160806
41420refgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016082420160806
41536refgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016082420160806
41648refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016082420160806
41786refgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016082420160806
43528sphlib-smallgcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv2016082420160806
43957sphlib-smallgcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv2016082420160806
44728sphlibclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016082420160806
46384sphlib-smallclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016082420160806
49259sphlib-smallgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016082420160806
49559sphlibgcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv2016082420160806
53375sphlib-smallgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016082420160806
54408sphlibgcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv2016082420160806

Compiler output

Implementation: crypto_hash/sha256/cryptopp
Compiler: clang++ -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.cpp: crypto_hash_sha256.a(hash.o): In function `crypto_hash_sha256_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::IteratedHashWithStaticTransform()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEC2Ev[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEC2Ev]+0x10): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEC2Ev[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEC2Ev]+0x58): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv]+0x4): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::HashEndianCorrectedBlock(unsigned int const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj]+0x4): undefined reference to `CryptoPP::SHA256::Transform(unsigned int*, unsigned int const*)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
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/sha256/cryptopp
Compiler: g++ -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
try.cpp: crypto_hash_sha256.a(hash.o): In function `crypto_hash_sha256_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::HashEndianCorrectedBlock(unsigned int const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj]+0x4): undefined reference to `CryptoPP::SHA256::Transform(unsigned int*, unsigned int const*)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv]+0x4): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: ...

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/sha256/cryptopp
Compiler: g++ -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv
try.cpp: crypto_hash_sha256.a(hash.o): In function `crypto_hash_sha256_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::HashEndianCorrectedBlock(unsigned int const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj]+0x8): undefined reference to `CryptoPP::SHA256::Transform(unsigned int*, unsigned int const*)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv]+0x8): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: ...

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/sha256/cryptopp
Compiler: g++ -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv
try.cpp: crypto_hash_sha256.a(hash.o): In function `crypto_hash_sha256_cryptopp':
try.cpp: hash.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::HashEndianCorrectedBlock(unsigned int const*)':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE24HashEndianCorrectedBlockEPKj]+0x4): undefined reference to `CryptoPP::SHA256::Transform(unsigned int*, unsigned int const*)'
try.cpp: crypto_hash_sha256.a(hash.o): In function `CryptoPP::IteratedHashWithStaticTransformgt;, 64u, 32u, CryptoPP::SHA256, 32u, true>gt;::Init()':
try.cpp: hash.cpp:(.text._ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv[_ZN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EE4InitEv]+0x4): undefined reference to `CryptoPP::SHA256::InitState(unsigned int*)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE[_ZTIN8CryptoPP16IteratedHashBaseIjNS_18HashTransformationEEE]+0x8): undefined reference to `typeinfo for CryptoPP::HashTransformation'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE[_ZTVN8CryptoPP12IteratedHashIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ENS_18HashTransformationEEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE[_ZTVN8CryptoPP31IteratedHashWithStaticTransformIjNS_10EnumToTypeINS_9ByteOrderELi1EEELj64ELj32ENS_6SHA256ELj32ELb1EEE]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x18): undefined reference to `CryptoPP::IteratedHashBasegt;::Update(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x1c): undefined reference to `CryptoPP::IteratedHashBasegt;::CreateUpdateSpace(unsigned int&)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x24): undefined reference to `CryptoPP::IteratedHashBasegt;::Restart()'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x44): undefined reference to `CryptoPP::IteratedHashBasegt;::TruncatedFinal(unsigned char*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x4c): undefined reference to `CryptoPP::HashTransformation::TruncatedVerify(unsigned char const*, unsigned int)'
try.cpp: crypto_hash_sha256.a(hash.o):(.rodata._ZTVN8CryptoPP6SHA256E[_ZTVN8CryptoPP6SHA256E]+0x60): undefined reference to `CryptoPP::IteratedHashBasegt;::HashMultipleBlocks(unsigned int const*, unsigned int)'
try.cpp: ...

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