Implementation notes: amd64, kizomba, crypto_hash/fugue512

Computer: kizomba
Microarchitecture: amd64; Kaby Lake (906e9)
Architecture: amd64
CPU ID: GenuineIntel-000906e9-1fc9cbf5
SUPERCOP version: 20240107
Operation: crypto_hash
Primitive: fugue512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4348132371 0 046061 784 800T:ccalik/aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
4541732563 0 043982 776 800T:ccalik/aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
4609132802 0 045036 816 744T:ccalik/aesniclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
4619133250 0 045780 816 792T:ccalik/aesniclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
4641331687 0 041318 808 792T:ccalik/aesniclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
4857129908 0 040886 776 800T:ccalik/aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
4860433342 0 041892 816 728T:ccalik/aesniclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
5221627381 0 037249 752 768T:ccalik/aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
5343443269 0 056957 784 800T:ccalik/vpermgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
5451640562 0 052660 816 792T:ccalik/vpermclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
5482740114 0 051916 816 744T:ccalik/vpermclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
5483239431 0 048526 808 792T:ccalik/vpermclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
5496642297 0 053718 776 800T:ccalik/vpermgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
5770440718 0 048836 816 728T:ccalik/vpermclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
5819438922 0 049902 776 800T:ccalik/vpermgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
6082636102 0 045961 752 768T:ccalik/vpermgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
7809940002 0 051142 784 800T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
7813337759 0 047882 768 768T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
7956141628 0 053295 792 800T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
7970043260 0 057087 792 800T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121320231212
7971139652 0 049900 816 728T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
8035540081 0 052726 824 728T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
8056439585 0 053836 816 792T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
8062939585 0 053540 816 744T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212
8998641360 0 052512 816 792T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121320231212

Compiler output

Implementation: T:ccalik/aesni
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
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 (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ccalik/aesni

Compiler output

Implementation: T:ccalik/vperm
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:447: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:168: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:447: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:168: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: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: 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:339:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:264:20: note: expanded from macro 'SUBSTITUTE'
hash.c: #define SUBSTITUTE SUBSTITUTE_VPERM_CORE
hash.c: ^
hash.c: ...

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