Implementation notes: amd64, h3neo, crypto_hash/round3jh256

Computer: h3neo
Microarchitecture: amd64; K10 45nm (100f63)
Architecture: amd64
CPU ID: AuthenticAMD-00100f63-078bfbff
SUPERCOP version: 20240107
Operation: crypto_hash
Primitive: round3jh256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
679515036 0 017915 844 896T:sse2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
685205541 0 019148 812 960T:sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
685904751 0 015127 788 928T:sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
686985477 0 017748 812 960T:sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
701405084 0 017491 844 896T:sse2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
701625084 0 016571 844 896T:sse2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
701835084 0 015651 844 896T:sse2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
701904969 0 014909 836 896T:sse2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
706145480 0 016875 804 960T:sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
718986682 0 016613 836 896T:simpleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
723856804 0 017355 844 896T:simpleclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
723966804 0 019227 844 896T:simpleclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
724076804 0 018307 844 896T:simpleclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
734107333 0 019620 812 960T:simplegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
734157333 0 020956 812 960T:simplegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
742877142 0 017503 788 928T:simplegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
744027364 0 020227 844 896T:simpleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
747737178 0 018579 804 960T:simplegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
7981037891 0 048563 844 896T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
798119293 0 019735 788 928T:sphlib-smallgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
7981637780 0 050291 844 896T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
7981737780 0 049371 844 896T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
7995934880 0 044941 836 896T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
8034213868 0 027564 812 960T:sphlib-smallgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
8079037028 0 050011 844 896T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
831829232 0 019293 836 896T:sphlib-smallclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
8382712148 0 023755 844 896T:sphlib-smallclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
8384812164 0 024707 844 896T:sphlib-smallclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
8404912259 0 022947 844 896T:sphlib-smallclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
844149693 0 021187 804 960T:sphlib-smallgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
8449640876 0 054572 812 960T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
8452012116 0 025099 844 896T:sphlib-smallclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023121720231212
8456437345 0 049708 812 960T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
8492011009 0 023372 812 960T:sphlib-smallgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
8543936233 0 047715 804 960T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212
8565936018 0 046455 788 928T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023121720231212

Compiler output

Implementation: T:ssse3
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
hash.c: hash.c:139:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'F8' that is compiled without support for 'ssse3'
hash.c: SWAP8(x1); SWAP8(x3); SWAP8(x5); SWAP8(x7);
hash.c: ^
hash.c: hash.c:64:25: note: expanded from macro 'SWAP8'
hash.c: #define SWAP8(x) (x) = _mm_shuffle_epi8((x),swap8)
hash.c: ^
hash.c: hash.c:139:16: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'F8' that is compiled without support for 'ssse3'
hash.c: SWAP8(x1); SWAP8(x3); SWAP8(x5); SWAP8(x7);
hash.c: ^
hash.c: hash.c:64:25: note: expanded from macro 'SWAP8'
hash.c: #define SWAP8(x) (x) = _mm_shuffle_epi8((x),swap8)
hash.c: ^
hash.c: hash.c:139:27: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'F8' that is compiled without support for 'ssse3'
hash.c: SWAP8(x1); SWAP8(x3); SWAP8(x5); SWAP8(x7);
hash.c: ^
hash.c: hash.c:64:25: note: expanded from macro 'SWAP8'
hash.c: #define SWAP8(x) (x) = _mm_shuffle_epi8((x),swap8)
hash.c: ^
hash.c: hash.c:139:38: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'F8' that is compiled without support for 'ssse3'
hash.c: SWAP8(x1); SWAP8(x3); SWAP8(x5); SWAP8(x7);
hash.c: ^
hash.c: hash.c:64:25: note: expanded from macro 'SWAP8'
hash.c: #define SWAP8(x) (x) = _mm_shuffle_epi8((x),swap8)
hash.c: ^
hash.c: hash.c:142:5: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'F8' that is compiled without support for 'ssse3'
hash.c: ...

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

Compiler output

Implementation: T:ssse3
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
hash.c: In file included from hash.c:3:
hash.c: hash.c: In function 'F8':
hash.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/tmmintrin.h:136:1: error: inlining failed in call to 'always_inline' '_mm_shuffle_epi8': target specific option mismatch
hash.c: 136 | _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: | ^~~~~~~~~~~~~~~~
hash.c: hash.c:65:26: note: called from here
hash.c: 65 | #define SWAP16(x) (x) = _mm_shuffle_epi8((x),swap16)
hash.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:142:41: note: in expansion of macro 'SWAP16'
hash.c: 142 | SWAP16(x1); SWAP16(x3); SWAP16(x5); SWAP16(x7);
hash.c: | ^~~~~~
hash.c: In file included from hash.c:3:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/tmmintrin.h:136:1: error: inlining failed in call to 'always_inline' '_mm_shuffle_epi8': target specific option mismatch
hash.c: 136 | _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: | ^~~~~~~~~~~~~~~~
hash.c: hash.c:65:26: note: called from here
hash.c: 65 | #define SWAP16(x) (x) = _mm_shuffle_epi8((x),swap16)
hash.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: hash.c:142:29: note: in expansion of macro 'SWAP16'
hash.c: 142 | SWAP16(x1); SWAP16(x3); SWAP16(x5); SWAP16(x7);
hash.c: | ^~~~~~
hash.c: In file included from hash.c:3:
hash.c: /usr/lib/gcc/x86_64-linux-gnu/11/include/tmmintrin.h:136:1: error: inlining failed in call to 'always_inline' '_mm_shuffle_epi8': target specific option mismatch
hash.c: 136 | _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
hash.c: | ^~~~~~~~~~~~~~~~
hash.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ssse3