Implementation notes: amd64, lucienne, crypto_hash/fugue384
Computer: lucienne
Microarchitecture: amd64; Zen 2 (860f81)
Architecture: amd64
CPU ID: AuthenticAMD-00860f81-178bfbff
SUPERCOP version: 20240808
Operation: crypto_hash
Primitive: fugue384
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
32717 | 31994 0 0 | 43392 812 920 | T:ccalik/aesni | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32724 | 31418 0 0 | 42688 812 920 | T:ccalik/aesni | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32731 | 30779 0 0 | 39950 804 888 | T:ccalik/aesni | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
32995 | 33030 0 0 | 45840 780 952 | T:ccalik/aesni | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
33118 | 32505 0 0 | 43584 780 952 | T:ccalik/aesni | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
35145 | 31382 0 0 | 40862 804 888 | T:ccalik/aesni | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
36040 | 29763 0 0 | 40488 780 952 | T:ccalik/aesni | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
36562 | 39658 0 0 | 50336 812 920 | T:ccalik/vperm | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
36657 | 40234 0 0 | 51040 812 920 | T:ccalik/vperm | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
37064 | 39290 0 0 | 47798 804 888 | T:ccalik/vperm | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
37282 | 27310 0 0 | 36995 756 920 | T:ccalik/aesni | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
37510 | 43808 0 0 | 56616 780 952 | T:ccalik/vperm | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
37773 | 42440 0 0 | 53512 780 952 | T:ccalik/vperm | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
39131 | 39542 0 0 | 48430 804 888 | T:ccalik/vperm | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
41616 | 38610 0 0 | 49336 780 952 | T:ccalik/vperm | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
41986 | 35963 0 0 | 45651 756 920 | T:ccalik/vperm | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240717 | 20240716 |
Compiler output
hash.c: hash.c:540:43: warning: unused variable 'uBlockCount' [-Wunused-variable]
hash.c: unsigned int i, col[30], block[4], base, uBlockCount = 5;
hash.c: ^
hash.c: hash.c:541:10: warning: unused variable 't1' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:541:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:746:10: warning: unused variable 't1' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:746:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:915:10: warning: unused variable 't1' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:915:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:1053:10: warning: unused variable 't1' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:1053:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ccalik/aesni | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:249:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_shuffle_epi8(r0, M128(_inv_shift_rows));\
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'Compress256' that is compiled without support for 'aes'
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:250:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: hash.c:341:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, r0);\
hash.c: ^
hash.c: hash.c:253:2: note: expanded from macro 'SUPERMIX'
hash.c: PRESUPERMIX(t0, t1, t2, t3, t4);\
hash.c: ^
hash.c: hash.c:245:25: note: expanded from macro 'PRESUPERMIX'
hash.c: s2 = _mm_xor_si128(s2, _mm_shuffle_epi8(M128(_mul2mask), t1));\
hash.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:ccalik/aesni | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
hash.c: In file included from hash.c:21:
hash.c: vperm.h:57:2: warning: multi-line comment [-Wcomment]
hash.c: 57 | //t2 = _mm_shuffle_epi8(table[0], x);\
hash.c: | ^
hash.c: hash.c:123:1: warning: multi-line comment [-Wcomment]
hash.c: 123 | //#define PACK_S0(s0, s1, t1)\
hash.c: | ^
hash.c: hash.c:132:1: warning: multi-line comment [-Wcomment]
hash.c: 132 | //#define UNPACK_S0(s0, s1, t1)\
hash.c: | ^
hash.c: hash.c:141:1: warning: multi-line comment [-Wcomment]
hash.c: 141 | //#define CMIX(s1, s2, r1, r2, t1, t2)\
hash.c: | ^
hash.c: hash.c:330:1: warning: multi-line comment [-Wcomment]
hash.c: 330 | //#define SUBROUND256(r1, r2, r0, r5)\
hash.c: | ^
hash.c: hash.c: In function 'Final256':
hash.c: hash.c:541:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: 541 | __m128i t1, t2;
hash.c: | ^~
hash.c: hash.c:541:10: warning: unused variable 't1' [-Wunused-variable]
hash.c: 541 | __m128i t1, t2;
hash.c: | ^~
hash.c: hash.c:540:43: warning: unused variable 'uBlockCount' [-Wunused-variable]
hash.c: 540 | unsigned int i, col[30], block[4], base, uBlockCount = 5;
hash.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ccalik/aesni | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
hash.c: hash.c:540:43: warning: unused variable 'uBlockCount' [-Wunused-variable]
hash.c: unsigned int i, col[30], block[4], base, uBlockCount = 5;
hash.c: ^
hash.c: hash.c:541:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:746:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:915:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: hash.c:1053:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: __m128i t1, t2;
hash.c: ^
hash.c: 5 warnings generated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ccalik/vperm | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
hash.c: hash.c:448:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: TIX256(pmsg, ctx->state[1], ctx->state[0], ctx->state[6], ctx->state[8], _t0, _t1, _t2);
hash.c: ^
hash.c: hash.c:169:2: note: expanded from macro 'TIX256'
hash.c: TRANSFORM(t1, _k_ipt, t2, t3);\
hash.c: ^
hash.c: ./vperm.h:52:7: note: expanded from macro 'TRANSFORM'
hash.c: t1 = _mm_shuffle_epi8(*((__m128i*)table + 1), t1);\
hash.c: ^
hash.c: hash.c:448:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: hash.c:169:2: note: expanded from macro 'TIX256'
hash.c: TRANSFORM(t1, _k_ipt, t2, t3);\
hash.c: ^
hash.c: ./vperm.h:53:7: note: expanded from macro 'TRANSFORM'
hash.c: x = _mm_shuffle_epi8(*((__m128i*)table + 0), x);\
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:265:20: note: expanded from macro 'SUBSTITUTE'
hash.c: #define SUBSTITUTE SUBSTITUTE_VPERM_CORE
hash.c: ^
hash.c: ...
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:ccalik/vperm | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
hash.c: In file included from hash.c:21:
hash.c: vperm.h:57:2: warning: multi-line comment [-Wcomment]
hash.c: 57 | //t2 = _mm_shuffle_epi8(table[0], x);\
hash.c: | ^
hash.c: hash.c:123:1: warning: multi-line comment [-Wcomment]
hash.c: 123 | //#define PACK_S0(s0, s1, t1)\
hash.c: | ^
hash.c: hash.c:132:1: warning: multi-line comment [-Wcomment]
hash.c: 132 | //#define UNPACK_S0(s0, s1, t1)\
hash.c: | ^
hash.c: hash.c:141:1: warning: multi-line comment [-Wcomment]
hash.c: 141 | //#define CMIX(s1, s2, r1, r2, t1, t2)\
hash.c: | ^
hash.c: hash.c:330:1: warning: multi-line comment [-Wcomment]
hash.c: 330 | //#define SUBROUND256(r1, r2, r0, r5)\
hash.c: | ^
hash.c: hash.c: In function 'Final256':
hash.c: hash.c:541:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: 541 | __m128i t1, t2;
hash.c: | ^~
hash.c: hash.c:540:43: warning: unused variable 'uBlockCount' [-Wunused-variable]
hash.c: 540 | unsigned int i, col[30], block[4], base, uBlockCount = 5;
hash.c: | ^~~~~~~~~~~
hash.c: hash.c: In function 'Final384':
hash.c: hash.c:746:14: warning: unused variable 't2' [-Wunused-variable]
hash.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ccalik/vperm | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Namespace violations
hash.o Compress256 T
hash.o Compress384 T
hash.o Compress512 T
hash.o Final T
hash.o Final256 T
hash.o Final384 T
hash.o Final512 T
hash.o Hash T
hash.o Init T
hash.o Update T
hash.o _IV256 R
hash.o _IV384 R
hash.o _IV512 R
hash.o _aes_shift_rows R
hash.o _inv_shift_rows R
hash.o _k_aesmix1 R
hash.o _k_aesmix2 R
hash.o _k_aesmix3 R
hash.o _k_aesmix4 R
hash.o _k_h0e R
hash.o _k_h15 R
hash.o _k_h4e R
hash.o _k_h5b R
hash.o _k_h63 R
hash.o _k_hc6 R
hash.o _k_inv R
hash.o _k_ipt R
hash.o _k_n R
hash.o _k_opt R
hash.o _k_s0F R
hash.o _k_sb1 R
hash.o _k_sb2 R
hash.o _k_sb3 R
hash.o _k_sb4 R
hash.o _k_sb5 R
hash.o _k_sb7 R
hash.o _k_sbo R
hash.o _lsbmask2 R
hash.o _maskd3n R
hash.o _mul2mask R
hash.o _mul4mask R
hash.o _shift_four_mask R
hash.o _shift_one_mask R
hash.o _shift_seven_mask R
hash.o _supermix1a R
hash.o _supermix1b R
hash.o _supermix1c R
hash.o _supermix1d R
hash.o _supermix2a R
hash.o _supermix4a R
hash.o _supermix4b R
hash.o _supermix4c R
hash.o _supermix7a R
hash.o _supermix7b R
hash.o _zero R
Number of similar (implementation,compiler) pairs: 16, namely:
Implementation | Compiler |
T:ccalik/aesni | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/aesni | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/aesni | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/aesni | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/aesni | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ccalik/vperm | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ccalik/vperm | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |