Implementation notes: amd64, ygritte, crypto_hash/fugue512

Computer: ygritte
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20200525
Operation: crypto_hash
Primitive: fugue512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3165431541 0 044292 800 776ccalik/aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
3175430012 0 040052 800 776ccalik/aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
3316228005 0 037908 800 776ccalik/aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
3584824925 0 033799 776 776ccalik/aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
3966239994 0 052740 800 776ccalik/vpermgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
3970438444 0 048484 800 776ccalik/vpermgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
3991031062 0 039329 776 736ccalik/aesniclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
3999432471 0 043971 784 752ccalik/aesniclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
4002231991 0 043155 784 752ccalik/aesniclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
4027831991 0 043155 784 752ccalik/aesniclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
4101639959 0 050619 784 752ccalik/vpermclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
4110240455 0 051451 784 752ccalik/vpermclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
4158435928 0 045828 800 776ccalik/vpermgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
4394633141 0 042015 776 776ccalik/vpermgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
4761639959 0 050619 784 752ccalik/vpermclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
4802039493 0 047105 776 736ccalik/vpermclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
5818639499 0 049637 800 776sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
5823640123 0 053030 808 776sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
5848639373 0 049381 800 776sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
5911036461 0 045513 784 776sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020052720200525
5921840369 0 052937 792 736sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
6953040065 0 052795 784 752sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
6956040065 0 053131 784 752sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
6962240065 0 052795 784 752sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525
7105038609 0 048223 784 736sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020052720200525

Compiler output

Implementation: ccalik/aesni
Security model: unknown
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 ccalik/aesni

Compiler output

Implementation: ccalik/vperm
Security model: unknown
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 ccalik/vperm

Namespace violations

Implementation: ccalik/aesni
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
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 (compiler,implementation) pairs: 16, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/aesni
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/aesni
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/aesni
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/aesni
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/aesni
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/aesni
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/aesni
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/vperm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/vperm
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/vperm
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ccalik/vperm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/vperm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/vperm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/vperm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ccalik/vperm

Namespace violations

Implementation: sphlib
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
fugue.o sph_fugue224 T
fugue.o sph_fugue224_addbits_and_close T
fugue.o sph_fugue224_close T
fugue.o sph_fugue224_init T
fugue.o sph_fugue256 T
fugue.o sph_fugue256_addbits_and_close T
fugue.o sph_fugue256_close T
fugue.o sph_fugue256_init T
fugue.o sph_fugue384 T
fugue.o sph_fugue384_addbits_and_close T
fugue.o sph_fugue384_close T
fugue.o sph_fugue384_init T
fugue.o sph_fugue512 T
fugue.o sph_fugue512_addbits_and_close T
fugue.o sph_fugue512_close T
fugue.o sph_fugue512_init T

Number of similar (compiler,implementation) pairs: 9, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE sphlib
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE sphlib