Implementation notes: amd64, cubi10, crypto_aead/aesjambuv1
Computer: cubi10
Microarchitecture: amd64; Comet Lake (806ec)
Architecture: amd64
CPU ID: GenuineIntel-000806ec-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: aesjambuv1
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
36689 | 4348 0 0 | 18375 772 1080 | T:aesni | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
41266 | 3993 0 0 | 20416 780 1080 | T:aesni | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
41280 | 3945 0 0 | 18424 780 1080 | T:aesni | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
42381 | 4461 0 0 | 21280 812 1048 | T:aesni | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
42386 | 4477 0 0 | 21392 812 1048 | T:aesni | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
42397 | 4427 0 0 | 17862 804 1016 | T:aesni | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
43132 | 2972 0 0 | 15859 756 1048 | T:aesni | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
44155 | 4082 0 0 | 17958 804 1016 | T:aesni | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
125372 | 5622 5120 0 | 28352 5908 1080 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
125584 | 5574 5120 0 | 26344 5908 1080 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
127582 | 5225 5120 0 | 23947 5884 1048 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
136342 | 5979 5120 0 | 26199 5900 1080 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
142794 | 5191 5120 0 | 27408 5940 1016 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
152166 | 6249 5120 0 | 26006 5932 1016 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
154432 | 5185 5120 0 | 24670 5932 1016 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
155747 | 5375 5120 0 | 28256 5940 1048 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
155946 | 5375 5120 0 | 28352 5940 1048 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
Compiler output
encrypt.c: encrypt.c:266:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:267:41: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:267:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:343:16: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: unsigned char check = 0;
encrypt.c: ^
encrypt.c: encrypt.c:341:42: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: encrypt.c:340:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:342:16: warning: unused variable 'tag' [-Wunused-variable]
encrypt.c: unsigned char tag[8];
encrypt.c: ^
encrypt.c: encrypt.c:341:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: 8 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesni | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.c: encrypt.c:266:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:267:41: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:267:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:341:42: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: encrypt.c:340:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:342:16: warning: unused variable 'tag' [-Wunused-variable]
encrypt.c: unsigned char tag[8];
encrypt.c: ^
encrypt.c: encrypt.c:341:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: encrypt.c:343:16: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: unsigned char check = 0;
encrypt.c: ^
encrypt.c: 8 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.c: encrypt.c:266:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:267:41: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:267:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:340:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:341:42: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: encrypt.c:341:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: encrypt.c:343:16: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: unsigned char check = 0;
encrypt.c: ^
encrypt.c: encrypt.c:342:16: warning: unused variable 'tag' [-Wunused-variable]
encrypt.c: unsigned char tag[8];
encrypt.c: ^
encrypt.c: 8 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.c: encrypt.c:266:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:267:41: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:267:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:343:16: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: unsigned char check = 0;
encrypt.c: ^
encrypt.c: encrypt.c:342:16: warning: unused variable 'tag' [-Wunused-variable]
encrypt.c: unsigned char tag[8];
encrypt.c: ^
encrypt.c: encrypt.c:341:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: encrypt.c:340:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:341:42: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: ^
encrypt.c: 8 warnings generated.
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.c: encrypt.c:267:41: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:266:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: unsigned long i,j;
encrypt.c: ^
encrypt.c: encrypt.c:267:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: ^
encrypt.c: encrypt.c:277:9: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: K[1] = KEYEXP(K[0], 0x01);
encrypt.c: ^
encrypt.c: encrypt.c:19:42: note: expanded from macro 'KEYEXP'
encrypt.c: #define KEYEXP(K, I) aes128_keyexpand(K, _mm_aeskeygenassist_si128(K, I))
encrypt.c: ^
encrypt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
encrypt.c: ^
encrypt.c: encrypt.c:278:9: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: K[2] = KEYEXP(K[1], 0x02);
encrypt.c: ^
encrypt.c: encrypt.c:19:42: note: expanded from macro 'KEYEXP'
encrypt.c: #define KEYEXP(K, I) aes128_keyexpand(K, _mm_aeskeygenassist_si128(K, I))
encrypt.c: ^
encrypt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aesni | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.c: encrypt.c: In function 'crypto_aead_aesjambuv1_aesni_timingleaks_encrypt':
encrypt.c: encrypt.c:267:41: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: 267 | unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:267:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: 267 | unsigned char partialblockplaintext[8],partialblockciphertext[8];
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:266:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: 266 | unsigned long i,j;
encrypt.c: | ^
encrypt.c: encrypt.c: In function 'crypto_aead_aesjambuv1_aesni_timingleaks_decrypt':
encrypt.c: encrypt.c:343:16: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: 343 | unsigned char check = 0;
encrypt.c: | ^~~~~
encrypt.c: encrypt.c:342:16: warning: unused variable 'tag' [-Wunused-variable]
encrypt.c: 342 | unsigned char tag[8];
encrypt.c: | ^~~
encrypt.c: encrypt.c:341:42: warning: unused variable 'partialblockciphertext' [-Wunused-variable]
encrypt.c: 341 | unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:341:16: warning: unused variable 'partialblockplaintext' [-Wunused-variable]
encrypt.c: 341 | unsigned char partialblockplaintext[16],partialblockciphertext[16];
encrypt.c: | ^~~~~~~~~~~~~~~~~~~~~
encrypt.c: encrypt.c:340:18: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: 340 | unsigned long i,j;
encrypt.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aesni | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
encrypt.c: encrypt.c:267:11: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: uint8_t check = 0;
encrypt.c: ^
encrypt.c: 1 warning generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.c: encrypt.c: In function 'crypto_aead_aesjambuv1_ref_timingleaks_decrypt':
encrypt.c: encrypt.c:267:11: warning: unused variable 'check' [-Wunused-variable]
encrypt.c: 267 | uint8_t check = 0;
encrypt.c: | ^~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Namespace violations
encrypt.o aes128_keyexpand T
Number of similar (implementation,compiler) pairs: 8, namely:
Implementation | Compiler |
T:aesni | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Namespace violations
aes.o AESEncrypt T
aes.o AESKeySteup T
aes.o TE0 D
aes.o TE1 D
aes.o TE2 D
aes.o TE3 D
aes.o TE4 D
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |