Implementation notes: amd64, scw1b63b1, crypto_stream/aes256ctr

Computer: scw1b63b1
Architecture: amd64
CPU ID: GenuineIntel-000506f1-0f8bfbff
SUPERCOP version: 20191017
Operation: crypto_stream
Primitive: aes256ctr
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
30744390 0 018532 808 856dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
31643840 0 015489 784 800dolbeau/aesenc-intclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
31643840 0 016313 784 800dolbeau/aesenc-intclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
31643840 0 015489 784 800dolbeau/aesenc-intclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
558013772 2800 01503167 146183 10296cryptoppg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
558013150 2800 01499748 146191 10296cryptoppg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
56848309 3272 01498388 147263 10264cryptoppg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
576013703 2800 01500979 146183 10296cryptoppg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
61343728 0 015699 800 856dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
61723637 0 015371 800 856dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
68103633 0 014331 776 800dolbeau/aesenc-intclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
74001925 0 012503 784 824dolbeau/aesenc-intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017

Compiler output

Implementation: cryptopp
Security model: unknown
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: crypto_stream_aes256ctr.a(stream.o):(.data.rel.ro._ZTVN8CryptoPP16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEEE[_ZTVN8CryptoPP16BlockCipherFinalILNS_9CipherDirE0ENS_8Rijndael3EncEEE]+0x100): undefined reference to `non-virtual thunk to CryptoPP::Rijndael::Base::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++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE cryptopp

Compiler output

Implementation: dolbeau/aesenc-int
Security model: unknown
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aesenc-int.c: aesenc-int.c:58:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aesenc-int.c: BLOCK1(0x01);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:39:11: note: expanded from macro 'BLOCK1'
aesenc-int.c: temp1 = _mm_aeskeygenassist_si128(temp2, IMM); ^
aesenc-int.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aesenc-int.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:59:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aesenc-int.c: ...
aesenc-int.c: clang: note: diagnostic msg:
aesenc-int.c: ********************
aesenc-int.c:
aesenc-int.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
aesenc-int.c: Preprocessed source(s) and associated run script(s) are located at:
aesenc-int.c: clang: note: diagnostic msg: /tmp/aesenc-int-6e39f7.c
aesenc-int.c: clang: note: diagnostic msg: /tmp/aesenc-int-6e39f7.sh
aesenc-int.c: clang: note: diagnostic msg:
aesenc-int.c:
aesenc-int.c: ********************

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/aesenc-int

Compiler output

Implementation: openssl
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
stream.c: stream.c:2:10: fatal error: 'openssl/evp.h' file not found
stream.c: #include <openssl/evp.h>
stream.c: ^
stream.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE openssl

Compiler output

Implementation: openssl
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
stream.c: stream.c:2:25: fatal error: openssl/evp.h: No such file or directory
stream.c: #include <openssl/evp.h>
stream.c: ^
stream.c: compilation terminated.

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