Implementation notes: aarch64, jetsontx1, crypto_aead/aes256gcmv1

Computer: jetsontx1
Architecture: aarch64
CPU ID: unknown CPU ID
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: aes256gcmv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1131214548 0 028681 760 840dolbeau/armv8cryptoclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1136114548 0 028681 760 840dolbeau/armv8cryptoclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1146014544 0 029881 760 856dolbeau/armv8cryptoclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
1168814892 0 030463 808 840dolbeau/armv8cryptoarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019101720190910
1190714908 0 031615 808 856dolbeau/armv8cryptoarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019101720190910
20934880 0 018490 888 856opensslarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019101720190910
209981096 0 015675 888 848opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
210021056 0 015483 888 848opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
21002932 0 014295 872 840opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
21095880 0 017354 888 840opensslarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019101720190910
21095728 0 015818 840 840opensslclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
21153728 0 015818 840 840opensslclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
213081096 0 016928 896 864opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
21349728 0 017034 840 856opensslclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
21412728 0 013936 832 840opensslclang_-mcpu=native_-march=armv8a+crypto_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
21251992572 0 1621079 808 872refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O3_-fPIC_-fPIE2019101720190910
23965042844 0 1619559 816 888refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
24043502572 0 1619943 808 856refarmclang_-march=armv8a+crypto_-mcpu=cortex-a57_-mtune=cortex-a57_-O2_-fPIC_-fPIE2019101720190910
24529172412 0 1618377 760 856refclang_-mcpu=native_-march=armv8a+crypto_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
24531712412 0 1618377 760 856refclang_-mcpu=native_-march=armv8a+crypto_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
24540332412 0 1619593 760 872refclang_-mcpu=native_-march=armv8a+crypto_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
27818831536 0 1615615 752 856refclang_-mcpu=native_-march=armv8a+crypto_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019101720190910
212213051980 0 1617434 808 864refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
217866972164 0 1617482 808 864refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910
234465921748 0 1615990 792 856refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019101720190910

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: armclang++ -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `crypto_aead_aes256gcmv1_cryptopp_encrypt':
try.cpp: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::CipherModeFinalTemplate_ExternalCipher<CryptoPP::ConcretePolicyHolder<CryptoPP::Empty, CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::CTR_ModePolicy> >, CryptoPP::AdditiveCipherAbstractPolicy> >::CipherModeFinalTemplate_ExternalCipher()'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base::GCTR'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base::GCTR'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::SimpleKeyingInterface::SetKeyWithIV(unsigned char const*, unsigned long, unsigned char const*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedEncryptionFilter::AuthenticatedEncryptionFilter(CryptoPP::AuthenticatedSymmetricCipher&, CryptoPP::BufferedTransformation*, bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, CryptoPP::BlockPaddingSchemeDef::BlockPaddingScheme)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
armclang++ -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE cryptopp
armclang++ -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O3 -fPIC -fPIE cryptopp
clang++ -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp
clang++ -mcpu=native -march=armv8a+crypto -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp
clang++ -mcpu=native -march=armv8a+crypto -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: clang++ -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `crypto_aead_aes256gcmv1_cryptopp_encrypt':
try.cpp: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::SimpleKeyingInterface::SetKeyWithIV(unsigned char const*, unsigned long, unsigned char const*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedEncryptionFilter::AuthenticatedEncryptionFilter(CryptoPP::AuthenticatedSymmetricCipher&, CryptoPP::BufferedTransformation*, bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, CryptoPP::BlockPaddingSchemeDef::BlockPaddingScheme)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::AuthenticatedEncryptionFilter'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::HashFilter'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::AuthenticatedEncryptionFilter'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::HashFilter'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Filter'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Filter'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::FilterWithBufferedInput'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::FilterWithBufferedInput'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::Rijndael::Base'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `crypto_aead_aes256gcmv1_cryptopp_encrypt':
try.cpp: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base::GCTR'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base::GCTR'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::SimpleKeyingInterface::SetKeyWithIV(unsigned char const*, unsigned long, unsigned char const*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedEncryptionFilter::AuthenticatedEncryptionFilter(CryptoPP::AuthenticatedSymmetricCipher&, CryptoPP::BufferedTransformation*, bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, CryptoPP::BlockPaddingSchemeDef::BlockPaddingScheme)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedEncryptionFilter::ChannelPut2(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned char const*, unsigned long, int, bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE cryptopp
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE cryptopp

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `crypto_aead_aes256gcmv1_cryptopp_encrypt':
try.cpp: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base::GCTR'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::GCM_Base::GCTR'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::SimpleKeyingInterface'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::SimpleKeyingInterface::SetKeyWithIV(unsigned char const*, unsigned long, unsigned char const*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::Algorithm::Algorithm(bool)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `vtable for CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedEncryptionFilter::AuthenticatedEncryptionFilter(CryptoPP::AuthenticatedSymmetricCipher&, CryptoPP::BufferedTransformation*, bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, CryptoPP::BlockPaddingSchemeDef::BlockPaddingScheme)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE cryptopp

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `crypto_aead_aes256gcmv1_cryptopp_encrypt':
try.cpp: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::SimpleKeyingInterface::SetKeyWithIV(unsigned char const*, unsigned long, unsigned char const*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::StringSinkTemplate<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::StringSinkTemplate(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedEncryptionFilter::AuthenticatedEncryptionFilter(CryptoPP::AuthenticatedSymmetricCipher&, CryptoPP::BufferedTransformation*, bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, CryptoPP::BlockPaddingSchemeDef::BlockPaddingScheme)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `crypto_aead_aes256gcmv1_cryptopp_decrypt':
try.cpp: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::SimpleKeyingInterface::SetKeyWithIV(unsigned char const*, unsigned long, unsigned char const*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AuthenticatedDecryptionFilter::AuthenticatedDecryptionFilter(CryptoPP::AuthenticatedSymmetricCipher&, CryptoPP::BufferedTransformation*, unsigned int, int, CryptoPP::BlockPaddingSchemeDef::BlockPaddingScheme)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::AAD_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::DEFAULT_CHANNEL[abi:cxx11]'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::BufferedTransformation::SetRetrievalChannel(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: stream.cpp:(.text+0x...): undefined reference to `CryptoPP::BufferedTransformation::Get(unsigned char*, unsigned long)'
try.cpp: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/bin/../lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: crypto_aead_aes256gcmv1.a(stream.o): in function `CryptoPP::ClonableImpl<CryptoPP::BlockCipherFinal<(CryptoPP::CipherDir)0, CryptoPP::Rijndael::Enc>, CryptoPP::Rijndael::Enc>::Clone() const':
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE cryptopp

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
armv8crypto.c: armv8crypto.c:245:9: warning: 'vext_p8' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vext_p8(a,b,c) vreinterpret_p8_u8(vext_u8(vreinterpret_u8_p8(a),vreinterpret_u8_p8(b),c))
armv8crypto.c: ^
armv8crypto.c: /opt/arm/arm-hpc-compiler-19.3_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/clang/7.1.0/include/arm_neon.h:5653:9: note: previous definition is here
armv8crypto.c: #define vext_p8(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:246:9: warning: 'vextq_p16' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vextq_p16(a,b,c) vreinterpretq_p16_u16(vextq_u16(vreinterpretq_u16_p16(a),vreinterpretq_u16_p16(b),c))
armv8crypto.c: ^
armv8crypto.c: /opt/arm/arm-hpc-compiler-19.3_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/clang/7.1.0/include/arm_neon.h:5716:9: note: previous definition is here
armv8crypto.c: #define vextq_p16(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE dolbeau/armv8crypto
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O3 -fPIC -fPIE dolbeau/armv8crypto

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
armv8crypto.c: armv8crypto.c:245:9: warning: 'vext_p8' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vext_p8(a,b,c) vreinterpret_p8_u8(vext_u8(vreinterpret_u8_p8(a),vreinterpret_u8_p8(b),c))
armv8crypto.c: ^
armv8crypto.c: /usr/local/llvm-8.0.1/lib/clang/8.0.1/include/arm_neon.h:5653:9: note: previous definition is here
armv8crypto.c: #define vext_p8(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:246:9: warning: 'vextq_p16' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vextq_p16(a,b,c) vreinterpretq_p16_u16(vextq_u16(vreinterpretq_u16_p16(a),vreinterpretq_u16_p16(b),c))
armv8crypto.c: ^
armv8crypto.c: /usr/local/llvm-8.0.1/lib/clang/8.0.1/include/arm_neon.h:5716:9: note: previous definition is here
armv8crypto.c: #define vextq_p16(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto
clang -mcpu=native -march=armv8a+crypto -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto
clang -mcpu=native -march=armv8a+crypto -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: clang -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
armv8crypto.c: armv8crypto.c:245:9: warning: 'vext_p8' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vext_p8(a,b,c) vreinterpret_p8_u8(vext_u8(vreinterpret_u8_p8(a),vreinterpret_u8_p8(b),c))
armv8crypto.c: ^
armv8crypto.c: /usr/local/llvm-8.0.1/lib/clang/8.0.1/include/arm_neon.h:5653:9: note: previous definition is here
armv8crypto.c: #define vext_p8(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:246:9: warning: 'vextq_p16' macro redefined [-Wmacro-redefined]
armv8crypto.c: #define vextq_p16(a,b,c) vreinterpretq_p16_u16(vextq_u16(vreinterpretq_u16_p16(a),vreinterpretq_u16_p16(b),c))
armv8crypto.c: ^
armv8crypto.c: /usr/local/llvm-8.0.1/lib/clang/8.0.1/include/arm_neon.h:5716:9: note: previous definition is here
armv8crypto.c: #define vextq_p16(__p0, __p1, __p2) __extension__ ({ \
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:664:5: warning: loop not unrolled: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning]
armv8crypto.c: int crypto_aead_encrypt(
armv8crypto.c: ^
armv8crypto.c: ./crypto_aead.h:6:29: note: expanded from macro 'crypto_aead_encrypt'
armv8crypto.c: #define crypto_aead_encrypt crypto_aead_aes256gcmv1_encrypt
armv8crypto.c: ^
armv8crypto.c: ./crypto_aead_aes256gcmv1.h:18:41: note: expanded from macro 'crypto_aead_aes256gcmv1_encrypt'
armv8crypto.c: #define crypto_aead_aes256gcmv1_encrypt crypto_aead_aes256gcmv1_dolbeau_armv8crypto_encrypt
armv8crypto.c: ^
armv8crypto.c: armv8crypto.c:664:5: warning: loop not unrolled: the optimizer was unable to perform the requested transformation; the transformation might be disabled or specified as part of an unsupported transformation ordering [-Wpass-failed=transform-warning]
armv8crypto.c: ./crypto_aead.h:6:29: note: expanded from macro 'crypto_aead_encrypt'
armv8crypto.c: #define crypto_aead_encrypt crypto_aead_aes256gcmv1_encrypt
armv8crypto.c: ^
armv8crypto.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -march=armv8a+crypto -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto

Compiler output

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
armv8crypto.c: In file included from armv8crypto.c:11:
armv8crypto.c: armv8crypto.c: In function 'aes_armv8_encrypt1':
armv8crypto.c: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/include/arm_neon.h:12426:1: error: inlining failed in call to always_inline 'vaeseq_u8': target specific option mismatch
armv8crypto.c: vaeseq_u8 (uint8x16_t data, uint8x16_t key)
armv8crypto.c: ^~~~~~~~~
armv8crypto.c: armv8crypto.c:82:10: note: called from here
armv8crypto.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+208)));
armv8crypto.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armv8crypto.c: In file included from armv8crypto.c:11:
armv8crypto.c: /opt/arm/gcc-8.2.0_Generic-AArch64_Ubuntu-16.04_aarch64-linux/lib/gcc/aarch64-linux-gnu/8.2.0/include/arm_neon.h:12426:1: error: inlining failed in call to always_inline 'vaeseq_u8': target specific option mismatch
armv8crypto.c: vaeseq_u8 (uint8x16_t data, uint8x16_t key)
armv8crypto.c: ^~~~~~~~~
armv8crypto.c: armv8crypto.c:82:10: note: called from here
armv8crypto.c: temp = vaeseq_u8(temp, vld1q_u8((rkeys+208)));
armv8crypto.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/armv8crypto

Namespace violations

Implementation: dolbeau/armv8crypto
Security model: unknown
Compiler: armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE
armv8crypto.o addmul T
armv8crypto.o mulv T

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O2 -fPIC -fPIE dolbeau/armv8crypto
armclang -march=armv8a+crypto -mcpu=cortex-a57 -mtune=cortex-a57 -O3 -fPIC -fPIE dolbeau/armv8crypto
clang -mcpu=native -march=armv8a+crypto -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto
clang -mcpu=native -march=armv8a+crypto -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto
clang -mcpu=native -march=armv8a+crypto -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/armv8crypto