Implementation notes: amd64, titan0, crypto_dh/k277mon

Computer: titan0
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20240716
Operation: crypto_dh
Primitive: k277mon
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
38082021244 0 043928 868 1760T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
38171121244 0 044240 868 1760T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
38500516892 0 036400 868 1728T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
39713815261 0 037909 812 1792T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
39856012149 0 031890 860 1792T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
4242189765 0 030333 812 1792T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
4435928277 0 027085 804 1760T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716
4535219197 0 029253 812 1792T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024071720240716

Compiler output


dh.c: In file included from dh.c:6:
dh.c: ./ffa.h:123:12: error: '__builtin_ia32_palignr128' needs target feature ssse3
dh.c:     a_01 = _mm_alignr_epi8(a_02, a_01, 8);
dh.c:            ^
dh.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/tmmintrin.h:152:13: note: expanded from macro '_mm_alignr_epi8'
dh.c:   ((__m128i)__builtin_ia32_palignr128((__v16qi)(__m128i)(a), \
dh.c:             ^
dh.c: In file included from dh.c:6:
dh.c: ./ffa.h:132:5: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
dh.c:     FFA_RED_277_STP(a,P,m,t_00,mul);
dh.c:     ^
dh.c: ./ffa.h:110:5: note: expanded from macro 'FFA_RED_277_STP'
dh.c:     ffa_red_277_stp(A##_00,A##_01,A##_02,P##_00,P##_01,P##_02,\
dh.c:     ^
dh.c: ./ffa.h:90:12: note: expanded from macro 'ffa_red_277_stp'
dh.c:     m_00 = _mm_clmulepi64_si128(mul, P_00, 0x00);\
dh.c:            ^
dh.c: /usr/lib/llvm-14/lib/clang/14.0.0/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
dh.c:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
dh.c:             ^
dh.c: In file included from dh.c:6:
dh.c: ./ffa.h:132:5: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
dh.c: ./ffa.h:110:5: note: expanded from macro 'FFA_RED_277_STP'
dh.c:     ffa_red_277_stp(A##_00,A##_01,A##_02,P##_00,P##_01,P##_02,\
dh.c:     ^
dh.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Namespace violations


dh.o eca_add_mon T
dh.o eca_dbl_mon T
dh.o eca_mxy_mon T
dh.o ffa_inv T
dh.o ffa_mul T
dh.o ffa_red_277 T
dh.o ffa_sqr T
dh.o smu_mon T
dh.o smu_mon_itb T

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)