Implementation notes: amd64, beelink, crypto_auth/siphash48

Computer: beelink
Microarchitecture: amd64; Zen3 (a50f00)
Architecture: amd64
CPU ID: AuthenticAMD-00a50f00-178bfbff
SUPERCOP version: 20221122
Operation: crypto_auth
Primitive: siphash48
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
66791361 0 016645 804 992T:littlegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
67311541 0 014853 804 992T:ref_legcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
67331541 0 016781 804 992T:ref_legcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
68183365 0 022071 860 928T:littleclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
68183365 0 022087 860 928T:littleclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
7003573 0 013063 860 928T:littleclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
70611391 0 020087 860 928T:ref_leclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
70621381 0 014573 852 960T:ref_leclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
70631391 0 020103 860 928T:ref_leclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
70821537 0 013184 780 960T:ref_legcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
7119691 0 013508 796 992T:littlegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
7365546 0 013749 852 960T:littleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
7422662 0 014005 804 992T:littlegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
74551085 0 015495 860 928T:littleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
7631606 0 012304 780 960T:littlegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
78321195 0 015591 860 928T:ref_leclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
82311519 0 014284 796 992T:ref_legcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
84111391 0 013871 860 928T:ref_leclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
146953373 0 022111 860 928T:sse2-1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
147271859 0 017133 804 992T:mmxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
147393373 0 022095 860 928T:sse2-1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
148762013 0 016439 860 928T:sse2-1clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
14878731 0 012424 780 960T:mmxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
148791261 0 013655 860 928T:sse2-1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
14881842 0 013660 796 992T:mmxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
14888812 0 014165 804 992T:mmxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
15006699 0 013925 852 960T:sse2-1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
15245828 0 014189 804 992T:sse2-1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
15287856 0 013684 796 992T:sse2-1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
15291743 0 012448 780 960T:sse2-1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
153761875 0 017149 804 992T:sse2-1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
156163053 0 021783 860 928T:mmxclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
156293053 0 021767 860 928T:mmxclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
16111615 0 013829 852 960T:mmxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
16388645 0 013143 860 928T:mmxclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
163911621 0 016039 860 928T:mmxclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
180343245 0 021967 860 928T:sse41clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
180373245 0 021983 860 928T:sse41clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
186881292 0 013703 860 928T:sse41clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
18700687 0 013909 852 960T:sse41clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
188041181 0 019903 860 928T:sandyclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
188091281 0 016565 804 992T:sandygcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
18826829 0 019535 860 928T:sandyclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
189201811 0 017085 804 992T:sse41gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
18957714 0 012416 780 960T:sse41gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
18960796 0 014157 804 992T:sse41gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
18962827 0 013652 796 992T:sse41gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
191911181 0 015591 860 928T:sandyclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
19199630 0 013973 804 992T:sandygcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
19202579 0 012272 780 960T:sandygcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122
19213525 0 013015 860 928T:sandyclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
19216508 0 013717 852 960T:sandyclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023010320221122
19613676 0 013492 796 992T:sandygcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023010320221122

Compiler output

Implementation: T:sse2-1
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
siphash.c: siphash.c:24:9: warning: '_mm_roti_epi64' macro redefined [-Wmacro-redefined]
siphash.c: #define _mm_roti_epi64(x, c) ((16 == (c)) ? _mm_shufflelo_epi16((x), _MM_SHUFFLE(2,1,0,3)) : _mm_xor_si128(_mm_slli_epi64((x), (c)), _mm_srli_epi64((x), 64-(c))))
siphash.c: ^
siphash.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:236:9: note: previous definition is here
siphash.c: #define _mm_roti_epi64(A, N) \
siphash.c: ^
siphash.c: 1 warning generated.

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

Compiler output

Implementation: T:sse41
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
siphash.c: siphash.c:27:9: warning: '_mm_roti_epi64' macro redefined [-Wmacro-redefined]
siphash.c: #define _mm_roti_epi64(x, c) (((c) == 16) ? rotate16((x)) : _mm_xor_si128(_mm_slli_epi64((x), (c)), _mm_srli_epi64((x), 64-(c))))
siphash.c: ^
siphash.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:236:9: note: previous definition is here
siphash.c: #define _mm_roti_epi64(A, N) \
siphash.c: ^
siphash.c: 1 warning generated.

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

Compiler output

Implementation: T:sse41
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
siphash.c: siphash.c:27:9: warning: '_mm_roti_epi64' macro redefined [-Wmacro-redefined]
siphash.c: #define _mm_roti_epi64(x, c) (((c) == 16) ? rotate16((x)) : _mm_xor_si128(_mm_slli_epi64((x), (c)), _mm_srli_epi64((x), 64-(c))))
siphash.c: ^
siphash.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/xopintrin.h:236:9: note: previous definition is here
siphash.c: #define _mm_roti_epi64(A, N) \
siphash.c: ^
siphash.c: siphash.c:70:39: error: '__builtin_ia32_pblendw128' needs target feature sse4.1
siphash.c: for(k = 0; k < SIPHASH_ROUNDS; ++k) COMPRESS(v02,v13);
siphash.c: ^
siphash.c: siphash.c:60:3: note: expanded from macro 'COMPRESS'
siphash.c: HALF_ROUND(v02,v13,13,16); \
siphash.c: ^
siphash.c: siphash.c:53:60: note: expanded from macro 'HALF_ROUND'
siphash.c: b1 = _mm_roti_epi64(b, s); b2 = _mm_roti_epi64(b, t); b = _mm_blend_epi16(b1, b2, 0xF0); \
siphash.c: ^
siphash.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/smmintrin.h:520:14: note: expanded from macro '_mm_blend_epi16'
siphash.c: ((__m128i) __builtin_ia32_pblendw128 ((__v8hi)(__m128i)(V1), \
siphash.c: ^
siphash.c: siphash.c:70:39: error: '__builtin_ia32_pblendw128' needs target feature sse4.1
siphash.c: siphash.c:62:3: note: expanded from macro 'COMPRESS'
siphash.c: HALF_ROUND(v02,v13,17,21); \
siphash.c: ^
siphash.c: siphash.c:53:60: note: expanded from macro 'HALF_ROUND'
siphash.c: b1 = _mm_roti_epi64(b, s); b2 = _mm_roti_epi64(b, t); b = _mm_blend_epi16(b1, b2, 0xF0); \
siphash.c: ^
siphash.c: ...

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