Implementation notes: amd64, hydra8, crypto_aead/aes128n12t8silcv2
Computer: hydra8
Microarchitecture: amd64; Ivy Bridge+AES (306a9)
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_aead
Primitive: aes128n12t8silcv2
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
32544 | 5280 0 176 | 21096 860 1216 | T:aesni | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32574 | 4983 0 176 | 21635 820 1280 | T:aesni | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32589 | 5323 0 176 | 19288 860 1216 | T:aesni | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32663 | 4119 0 176 | 17674 852 1216 | T:aesni | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32666 | 5322 0 176 | 23088 860 1216 | T:aesni | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32766 | 5772 0 176 | 21195 820 1280 | T:aesni | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32802 | 5166 0 176 | 20339 820 1280 | T:aesni | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
33052 | 5294 0 176 | 19070 796 1248 | T:aesni | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
137400 | 25839 0 0 | 42327 812 1088 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
146229 | 22107 0 0 | 37359 812 1088 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
148892 | 23158 0 0 | 39780 860 1024 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
149445 | 23240 0 0 | 41204 860 1024 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
150756 | 22431 0 0 | 38460 860 1024 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
156536 | 21443 0 0 | 35018 788 1056 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
157581 | 20787 0 0 | 34526 852 1024 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
158848 | 22330 0 0 | 37132 796 1088 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
164006 | 21380 0 0 | 35548 860 1024 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
Compiler output
encrypt.c: encrypt.c:111:9: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: int j;
encrypt.c: ^
encrypt.c: 1 warning generated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aesni | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: In file included from encrypt.c:41:
encrypt.c: ./aes.h:30:2: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 1); roundkeys[1] = x0;
encrypt.c: ^
encrypt.c: ./aes.h:13:7: note: expanded from macro 'EXPAND_ASSIST'
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R)))
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:
encrypt.c: ./aes.h:31:2: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 2); roundkeys[2] = x0;
encrypt.c: ^
encrypt.c: ./aes.h:13:7: note: expanded from macro 'EXPAND_ASSIST'
encrypt.c: v2 = _mm_aeskeygenassist_si128(v4, aes_const); \
encrypt.c: ^
encrypt.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_aes.h:136:13: note: expanded from macro '_mm_aeskeygenassist_si128'
encrypt.c: ((__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R)))
encrypt.c: ^
encrypt.c: In file included from encrypt.c:41:
encrypt.c: ./aes.h:32:2: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
encrypt.c: EXPAND_ASSIST(x0, x1, x2, x0, 4); roundkeys[3] = x0;
encrypt.c: ^
encrypt.c: ./aes.h:13:7: note: expanded from macro 'EXPAND_ASSIST'
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 (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c: In function 'crypto_aead_aes128n12t8silcv2_aesni_timingleaks_encrypt':
encrypt.c: encrypt.c:111:9: warning: unused variable 'j' [-Wunused-variable]
encrypt.c: 111 | int 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 (11.4.0) |
T:aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Compiler output
encrypt.c: encrypt.c:68:2: warning: misleading indentation; statement is not part of the previous 'for' [-Wmisleading-indentation]
encrypt.c: return RETURN_SUCCESS;
encrypt.c: ^
encrypt.c: encrypt.c:63:5: note: previous statement is here
encrypt.c: for(i = 0; i < CRYPTO_ABYTES; i++)
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 (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
encrypt.c: encrypt.c: In function 'crypto_aead_aes128n12t8silcv2_ref_timingleaks_decrypt':
encrypt.c: encrypt.c:63:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
encrypt.c: 63 | for(i = 0; i < CRYPTO_ABYTES; i++)
encrypt.c: | ^~~
encrypt.c: encrypt.c:68:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
encrypt.c: 68 | return RETURN_SUCCESS;
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 (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
encrypt.o AES128_KeyExpansion T
encrypt.o load_partial_block T
encrypt.o print_state T
encrypt.o roundkeys B
encrypt.o store_partial_block T
encrypt.o xor_length 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 (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:aesni | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
aes_core.o AES_decrypt T
aes_core.o AES_encrypt T
aes_core.o AES_set_decrypt_key T
aes_core.o AES_set_encrypt_key T
aes_core.o print_state T
silc.o ae_encrypt T
silc.o ae_init T
silc.o process_ad T
utils.o print_cxt T
utils.o pstate T
utils.o pstate2 T
utils.o xor_bytes T
utils.o xor_bytes2 T
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |