Implementation notes: aarch64, hikey960, crypto_stream/sosemanuk

Computer: hikey960
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20190816
Operation: crypto_stream
Primitive: sosemanuk
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
09116 2240 01445858 150129 15120cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019112720190816
576312852 2240 01456746 150129 15120cryptoppg++_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112720190816
576312950 2240 01448770 150129 15136cryptoppg++_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112720190816
57639394 2240 01445563 150137 15120cryptoppg++_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2019112720190816
57639218 2240 01447546 150129 15136cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019112720190816
768417797 3664 01461759 151425 15120cryptoppg++2019112720190816
76846872 2880 01440974 150777 15120cryptoppg++_-Os_-fomit-frame-pointer2019112720190816
76849234 2240 01443418 150129 15136cryptoppg++_-fno-schedule-insns_-O3_-fomit-frame-pointer2019112720190816
76849058 2240 01442027 150137 15120cryptoppg++_-fno-schedule-insns_-O_-fomit-frame-pointer2019112720190816
76849058 2240 01442027 150137 15120cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019112720190816
96059112 2240 01445858 150129 15120cryptoppg++_-O2_-fomit-frame-pointer2019112720190816
96059218 2240 01443482 150129 15136cryptoppg++_-O3_-fomit-frame-pointer2019112720190816
97906872 2880 01440974 150777 15120cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019112720190816
115269058 2240 01442027 150137 15120cryptoppg++_-O_-fomit-frame-pointer2019112720190816
115269136 2240 01441682 150129 15120cryptoppg++_-fno-schedule-insns_-O2_-fomit-frame-pointer2019112720190816
115266872 2880 01440974 150777 15120cryptoppg++_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112720190816
115266868 2880 01441030 150777 15120cryptoppg++_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2019112720190816

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: clang++ -O3 -fomit-frame-pointer -Qunused-arguments
try.cpp: crypto_stream_sosemanuk.a(stream.o):(.rodata._ZTVN8CryptoPP20SymmetricCipherFinalINS_20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES5_EENS_13SosemanukInfoEEE[_ZTVN8CryptoPP20SymmetricCipherFinalINS_20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES5_EENS_13SosemanukInfoEEE]+0x128): undefined reference to `non-virtual thunk to CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::SymmetricCipher> >::AlgorithmProvider[abi:cxx11]() const'
try.cpp: crypto_stream_sosemanuk.a(stream.o):(.rodata._ZTVN8CryptoPP20SymmetricCipherFinalINS_20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES5_EENS_13SosemanukInfoEEE[_ZTVN8CryptoPP20SymmetricCipherFinalINS_20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES5_EENS_13SosemanukInfoEEE]+0x1c0): undefined reference to `non-virtual thunk to CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::SymmetricCipher> >::AlgorithmProvider[abi:cxx11]() const'
try.cpp: crypto_stream_sosemanuk.a(stream.o):(.rodata._ZTVN8CryptoPP20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES4_EE[_ZTVN8CryptoPP20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES4_EE]+0x118): undefined reference to `non-virtual thunk to CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::SymmetricCipher> >::AlgorithmProvider[abi:cxx11]() const'
try.cpp: crypto_stream_sosemanuk.a(stream.o):(.rodata._ZTVN8CryptoPP20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES4_EE[_ZTVN8CryptoPP20ConcretePolicyHolderINS_15SosemanukPolicyENS_22AdditiveCipherTemplateINS_20AbstractPolicyHolderINS_28AdditiveCipherAbstractPolicyENS_15SymmetricCipherEEEEES4_EE]+0x1b0): undefined reference to `non-virtual thunk to CryptoPP::AdditiveCipherTemplate<CryptoPP::AbstractPolicyHolder<CryptoPP::AdditiveCipherAbstractPolicy, CryptoPP::SymmetricCipher> >::AlgorithmProvider[abi:cxx11]() const'
try.cpp: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer -Qunused-arguments cryptopp
clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments cryptopp
clang++ -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments cryptopp
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments cryptopp

Compiler output

Implementation: e/submissions/sosemanuk
Security model: unknown
Compiler: cc
sosemanuk.c: In file included from sosemanuk.c:2:0:
sosemanuk.c: e/sosemanuk.c: In function 'sosemanuk_internal':
sosemanuk.c: e/sosemanuk.c:848:6: warning: implicit declaration of function 'U32TO32_LITTLE' [-Wimplicit-function-declaration]
sosemanuk.c: ^ U32TO32_LITTLE(u ## x0 ^ v0); \
sosemanuk.c: ^
sosemanuk.c: e/sosemanuk.c:959:2: note: in expansion of macro 'SRD'
sosemanuk.c: SRD(S2, 2, 3, 1, 4, 0);
sosemanuk.c: ^~~
try.c: crypto_stream_sosemanuk.a(sosemanuk.o): In function `sosemanuk_internal':
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_sosemanuk.a(sosemanuk.o):sosemanuk.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 23, namely:
CompilerImplementations
cc e/submissions/sosemanuk
gcc e/submissions/sosemanuk
gcc -O2 -fomit-frame-pointer e/submissions/sosemanuk
gcc -O3 -fomit-frame-pointer e/submissions/sosemanuk
gcc -O -fomit-frame-pointer e/submissions/sosemanuk
gcc -Os -fomit-frame-pointer e/submissions/sosemanuk
gcc -fno-schedule-insns -O2 -fomit-frame-pointer e/submissions/sosemanuk
gcc -fno-schedule-insns -O3 -fomit-frame-pointer e/submissions/sosemanuk
gcc -fno-schedule-insns -O -fomit-frame-pointer e/submissions/sosemanuk
gcc -fno-schedule-insns -Os -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops e/submissions/sosemanuk
gcc -funroll-loops -O2 -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -O3 -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -O -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -Os -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer e/submissions/sosemanuk
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer e/submissions/sosemanuk
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv e/submissions/sosemanuk
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv e/submissions/sosemanuk
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv e/submissions/sosemanuk
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv e/submissions/sosemanuk

Compiler output

Implementation: e/submissions/sosemanuk
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
sosemanuk.c: In file included from sosemanuk.c:2:
sosemanuk.c: ./e/sosemanuk.c:959:2: warning: implicit declaration of function 'U32TO32_LITTLE' is invalid in C99 [-Wimplicit-function-declaration]
sosemanuk.c: SRD(S2, 2, 3, 1, 4, 0);
sosemanuk.c: ^
sosemanuk.c: ./e/sosemanuk.c:848:6: note: expanded from macro 'SRD'
sosemanuk.c: ^ U32TO32_LITTLE(u ## x0 ^ v0); \
sosemanuk.c: ^
sosemanuk.c: 1 warning generated.
try.c: crypto_stream_sosemanuk.a(sosemanuk.o): In function `sosemanuk_internal':
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: sosemanuk.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_sosemanuk.a(sosemanuk.o):sosemanuk.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments e/submissions/sosemanuk
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments e/submissions/sosemanuk
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments e/submissions/sosemanuk
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments e/submissions/sosemanuk