Implementation notes: amd64, nucnuc, crypto_aead/aes256gcmv1
Computer: nucnuc
Microarchitecture: amd64; Airmont (406c3)
Architecture: amd64
CPU ID: GenuineIntel-000406c3-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: aes256gcmv1
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
39469 | 893 0 0 | 24199 892 1016 | T:opensslnew | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
39513 | 889 0 0 | 21741 884 1016 | T:opensslnew | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
39623 | 894 0 0 | 23087 892 1016 | T:opensslnew | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
39644 | 946 0 0 | 22055 868 1048 | T:opensslnew | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
39661 | 894 0 0 | 21301 884 1016 | T:opensslnew | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
39774 | 926 0 0 | 23800 876 1048 | T:opensslnew | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
39957 | 894 0 0 | 24735 892 1016 | T:opensslnew | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
40027 | 926 0 0 | 22632 876 1048 | T:opensslnew | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
40343 | 878 0 0 | 20547 852 1048 | T:opensslnew | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
40811 | 18582 0 0 | 39760 812 1016 | dolbeau/aesenc-int | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
41734 | 18851 0 0 | 41664 812 1016 | dolbeau/aesenc-int | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
42371 | 16403 0 0 | 35878 804 1016 | dolbeau/aesenc-int | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
43612 | 12034 0 0 | 32295 772 1080 | dolbeau/aesenc-int | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
45154 | 6181 0 0 | 25027 756 1048 | dolbeau/aesenc-int | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
47033 | 11875 0 0 | 32712 780 1080 | dolbeau/aesenc-int | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
47711 | 19032 0 0 | 41000 780 1080 | dolbeau/aesenc-int | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
48526 | 8723 0 0 | 28694 804 1016 | dolbeau/aesenc-int | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
274352 | 17766 3040 0 | 1418118 148468 10936 | T:cryptopp | clang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
274399 | 33547 3040 0 | 1722342 148452 11032 | T:cryptopp | g++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
274516 | 17258 3040 0 | 1415970 148468 10936 | T:cryptopp | clang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
274827 | 37791 3040 0 | 1728966 148444 11032 | T:cryptopp | g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
275262 | 34658 3040 0 | 1724924 148452 11032 | T:cryptopp | g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
275927 | 14689 2456 0 | 1413246 148460 10936 | T:cryptopp | clang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
277659 | 14300 4072 0 | 1696174 149268 11000 | T:cryptopp | g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
284881 | 23353 7904 0 | 1424818 152108 10936 | T:cryptopp | clang++_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
3410742 | 3594 0 16 | 26688 812 1048 | ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
3544560 | 2829 0 16 | 26456 812 1048 | ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
3547154 | 2829 0 16 | 24808 812 1048 | ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
5780750 | 1633 0 16 | 21926 804 1048 | ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
6433022 | 3943 0 16 | 26680 780 1112 | ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
22427402 | 1837 0 16 | 22590 804 1048 | ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
27857422 | 2269 0 16 | 23840 780 1112 | ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
28709601 | 2160 0 16 | 23167 772 1112 | ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
34020446 | 1766 0 16 | 21355 756 1080 | ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240703 | 20240625 |
Compiler output
aesenc-int.c: aesenc-int.c:270:17: warning: unused variable 'rev' [-Wunused-variable]
aesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:161:20: warning: unused function 'inc' [-Wunused-function]
aesenc-int.c: static inline void inc(unsigned char *n) {
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:184:1: warning: unused function 'aesni_encrypt2' [-Wunused-function]
aesenc-int.c: FUNC(2, MAKE2)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:171:22: note: expanded from macro 'FUNC'
aesenc-int.c: static inline void aesni_encrypt##N(unsigned char *out, unsigned int *n, const __m128i rkeys[16]) { \
aesenc-int.c: ^
aesenc-int.c: <scratch space>:224:1: note: expanded from here
aesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
aesenc-int.c: aesenc-int.c:270:17: warning: unused variable 'rev' [-Wunused-variable]
aesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:161:20: warning: unused function 'inc' [-Wunused-function]
aesenc-int.c: static inline void inc(unsigned char *n) {
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:184:1: warning: unused function 'aesni_encrypt2' [-Wunused-function]
aesenc-int.c: FUNC(2, MAKE2)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:171:22: note: expanded from macro 'FUNC'
aesenc-int.c: static inline void aesni_encrypt##N(unsigned char *out, unsigned int *n, const __m128i rkeys[16]) { \
aesenc-int.c: ^
aesenc-int.c: <scratch space>:224:1: note: expanded from here
aesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
aesenc-int.c: aesenc-int.c:270:17: warning: unused variable 'rev' [-Wunused-variable]
aesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:161:20: warning: unused function 'inc' [-Wunused-function]
aesenc-int.c: static inline void inc(unsigned char *n) {
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:184:1: warning: unused function 'aesni_encrypt2' [-Wunused-function]
aesenc-int.c: FUNC(2, MAKE2)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:171:22: note: expanded from macro 'FUNC'
aesenc-int.c: static inline void aesni_encrypt##N(unsigned char *out, unsigned int *n, const __m128i rkeys[16]) { \
aesenc-int.c: ^
aesenc-int.c: <scratch space>:224:1: note: expanded from here
aesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
aesenc-int.c: aesenc-int.c:270:17: warning: unused variable 'rev' [-Wunused-variable]
aesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:161:20: warning: unused function 'inc' [-Wunused-function]
aesenc-int.c: static inline void inc(unsigned char *n) {
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:184:1: warning: unused function 'aesni_encrypt2' [-Wunused-function]
aesenc-int.c: FUNC(2, MAKE2)
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:171:22: note: expanded from macro 'FUNC'
aesenc-int.c: static inline void aesni_encrypt##N(unsigned char *out, unsigned int *n, const __m128i rkeys[16]) { \
aesenc-int.c: ^
aesenc-int.c: <scratch space>:224:1: note: expanded from here
aesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
aesenc-int.c: aesenc-int.c:270:17: warning: unused variable 'rev' [-Wunused-variable]
aesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:364:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:468:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ^
aesenc-int.c: aesenc-int.c:665:16: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_aead_aes256gcmv1_dolbeau_aesenc_int_constbranchindex_encrypt' that is compiled without support for 'ssse3'
aesenc-int.c: __m128i Hv = _mm_shuffle_epi8(_mm_loadu_si128((const __m128i*)H), rev);
aesenc-int.c: ^
aesenc-int.c: 5 warnings and 1 error generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
aesenc-int.c: aesenc-int.c: In function 'aesni_encrypt1':
aesenc-int.c: aesenc-int.c:98: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
aesenc-int.c: 98 | #pragma unroll(13)
aesenc-int.c: |
aesenc-int.c: aesenc-int.c: In function 'addmul':
aesenc-int.c: aesenc-int.c:217:64: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
aesenc-int.c: 217 | unsigned long long mask = -1ull ^ (1ull<<(((16-xlen)%8)*8))-1ull;
aesenc-int.c: | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
aesenc-int.c: aesenc-int.c: In function 'mulv':
aesenc-int.c: aesenc-int.c:270:17: warning: unused variable 'rev' [-Wunused-variable]
aesenc-int.c: 270 | const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
aesenc-int.c: | ^~~
aesenc-int.c: aesenc-int.c: In function 'reduce4':
aesenc-int.c: aesenc-int.c:364:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: 364 | __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: | ^~~~~
aesenc-int.c: aesenc-int.c:364:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: 364 | __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: | ^~~~~
aesenc-int.c: aesenc-int.c: In function 'reduce8':
aesenc-int.c: aesenc-int.c:468:26: warning: unused variable 'tmphi' [-Wunused-variable]
aesenc-int.c: 468 | __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: | ^~~~~
aesenc-int.c: aesenc-int.c:468:15: warning: unused variable 'tmplo' [-Wunused-variable]
aesenc-int.c: 468 | __m128i lo, tmplo, hi, tmphi;
aesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
vaesenc-int.c: vaesenc-int.c:16:2: error: "This code requires AVX enabled in the compiler."
vaesenc-int.c: #error "This code requires AVX enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:20:2: error: "This code requires VAES enabled in the compiler."
vaesenc-int.c: #error "This code requires VAES enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:403:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:446:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m256i rev = _mm256_broadcastsi128_si256(_mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15));
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:698:24: warning: unused variable 'tmp1' [-Wunused-variable]
vaesenc-int.c: __m128i tmp0, tmp0B, tmp1, tmp1B, tmp2, tmp2B, tmp3, tmp3B;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:26: warning: unused variable 'tmphi' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:15: warning: unused variable 'tmplo' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1237:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: unsigned long long mlen_rnd256 = mlen & ~255ull;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1449:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 2, namely:
Implementation | Compiler |
dolbeau/vaesenc-int | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
dolbeau/vaesenc-int | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
vaesenc-int.c: vaesenc-int.c:16:2: error: "This code requires AVX enabled in the compiler."
vaesenc-int.c: #error "This code requires AVX enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:20:2: error: "This code requires VAES enabled in the compiler."
vaesenc-int.c: #error "This code requires VAES enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:403:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:446:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m256i rev = _mm256_broadcastsi128_si256(_mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15));
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:698:24: warning: unused variable 'tmp1' [-Wunused-variable]
vaesenc-int.c: __m128i tmp0, tmp0B, tmp1, tmp1B, tmp2, tmp2B, tmp3, tmp3B;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:15: warning: unused variable 'tmplo' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:26: warning: unused variable 'tmphi' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1237:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: unsigned long long mlen_rnd256 = mlen & ~255ull;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1449:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/vaesenc-int | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
vaesenc-int.c: vaesenc-int.c:16:2: error: "This code requires AVX enabled in the compiler."
vaesenc-int.c: #error "This code requires AVX enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:20:2: error: "This code requires VAES enabled in the compiler."
vaesenc-int.c: #error "This code requires VAES enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:403:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:446:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m256i rev = _mm256_broadcastsi128_si256(_mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15));
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:26: warning: unused variable 'tmphi' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:15: warning: unused variable 'tmplo' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:698:24: warning: unused variable 'tmp1' [-Wunused-variable]
vaesenc-int.c: __m128i tmp0, tmp0B, tmp1, tmp1B, tmp2, tmp2B, tmp3, tmp3B;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1237:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: unsigned long long mlen_rnd256 = mlen & ~255ull;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1449:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/vaesenc-int | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
vaesenc-int.c: vaesenc-int.c:16:2: error: "This code requires AVX enabled in the compiler."
vaesenc-int.c: #error "This code requires AVX enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:20:2: error: "This code requires VAES enabled in the compiler."
vaesenc-int.c: #error "This code requires VAES enabled in the compiler."
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:403:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:446:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: const __m256i rev = _mm256_broadcastsi128_si256(_mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15));
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:26: warning: unused variable 'tmphi' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:698:24: warning: unused variable 'tmp1' [-Wunused-variable]
vaesenc-int.c: __m128i tmp0, tmp0B, tmp1, tmp1B, tmp2, tmp2B, tmp3, tmp3B;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:679:15: warning: unused variable 'tmplo' [-Wunused-variable]
vaesenc-int.c: __m128i lo, tmplo, hi, tmphi;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1237:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: unsigned long long mlen_rnd256 = mlen & ~255ull;
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:1449:22: warning: unused variable 'mlen_rnd256' [-Wunused-variable]
vaesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
dolbeau/vaesenc-int | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
vaesenc-int.c: vaesenc-int.c:16:2: error: #error "This code requires AVX enabled in the compiler."
vaesenc-int.c: 16 | #error "This code requires AVX enabled in the compiler."
vaesenc-int.c: | ^~~~~
vaesenc-int.c: vaesenc-int.c:20:2: error: #error "This code requires VAES enabled in the compiler."
vaesenc-int.c: 20 | #error "This code requires VAES enabled in the compiler."
vaesenc-int.c: | ^~~~~
vaesenc-int.c: vaesenc-int.c: In function 'aesni_encrypt1':
vaesenc-int.c: vaesenc-int.c:139: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
vaesenc-int.c: 139 | #pragma unroll(13)
vaesenc-int.c: |
vaesenc-int.c: vaesenc-int.c: In function 'aesni_encryptv2':
vaesenc-int.c: vaesenc-int.c:316: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
vaesenc-int.c: 316 | #pragma unroll(13)
vaesenc-int.c: |
vaesenc-int.c: vaesenc-int.c: In function 'addmul':
vaesenc-int.c: vaesenc-int.c:350:64: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses]
vaesenc-int.c: 350 | unsigned long long mask = -1ull ^ (1ull<<(((16-xlen)%8)*8))-1ull;
vaesenc-int.c: | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
vaesenc-int.c: vaesenc-int.c: In function 'mulv':
vaesenc-int.c: vaesenc-int.c:403:17: warning: unused variable 'rev' [-Wunused-variable]
vaesenc-int.c: 403 | const __m128i rev = _mm_set_epi8(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15);
vaesenc-int.c: | ^~~
vaesenc-int.c: vaesenc-int.c: In function 'mulvv2':
vaesenc-int.c: vaesenc-int.c:445:9: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
vaesenc-int.c: 445 | __m256i B) {
vaesenc-int.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
dolbeau/vaesenc-int | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/vaesenc-int | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/vaesenc-int | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/vaesenc-int | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
decrypt.c: decrypt.c:13:18: error: variable has incomplete type 'EVP_CIPHER_CTX' (aka 'struct evp_cipher_ctx_st')
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c: /usr/include/openssl/ossl_typ.h:90:16: note: forward declaration of 'struct evp_cipher_ctx_st'
decrypt.c: typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
decrypt.c: ^
decrypt.c: 1 error generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:openssl | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:openssl | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:openssl | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:openssl | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:openssl | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
decrypt.c: decrypt.c: In function 'crypto_aead_aes256gcmv1_openssl_timingleaks_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: 13 | EVP_CIPHER_CTX x;
decrypt.c: | ^
decrypt.c: decrypt.c:13:18: warning: unused variable 'x' [-Wunused-variable]
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:openssl | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:openssl | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:openssl | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:openssl | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Passed TIMECOP
TIMECOP iterations: 10
Number of similar (implementation,compiler) pairs: 17, namely:
Implementation | Compiler |
dolbeau/aesenc-int | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
dolbeau/aesenc-int | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
dolbeau/aesenc-int | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
dolbeau/aesenc-int | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
dolbeau/aesenc-int | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |