Implementation notes: amd64, wolfdale, crypto_kem/rolloii192

Computer: wolfdale
Microarchitecture: amd64; Core 2 45nm (1067a)
Architecture: amd64
CPU ID: GenuineIntel-0001067a-bfebfbff
SUPERCOP version: 20240425
Operation: crypto_kem
Primitive: rolloii192

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rbc_elt.c: rbc_elt.c:467:19: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
rbc_elt.c: __m128i a0_b0 = _mm_clmulepi64_si128(a, b, 0x00);
rbc_elt.c: ^
rbc_elt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
rbc_elt.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
rbc_elt.c: ^
rbc_elt.c: rbc_elt.c:469:19: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
rbc_elt.c: __m128i a0_b1 = _mm_clmulepi64_si128(a, b, 0x10);
rbc_elt.c: ^
rbc_elt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
rbc_elt.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
rbc_elt.c: ^
rbc_elt.c: rbc_elt.c:470:19: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
rbc_elt.c: __m128i a1_b0 = _mm_clmulepi64_si128(a, b, 0x01);
rbc_elt.c: ^
rbc_elt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
rbc_elt.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
rbc_elt.c: ^
rbc_elt.c: rbc_elt.c:472:19: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
rbc_elt.c: __m128i a1_b1 = _mm_clmulepi64_si128(a, b, 0x11);
rbc_elt.c: ^
rbc_elt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
rbc_elt.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
rbc_elt.c: ^
rbc_elt.c: 4 errors generated.

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

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
rbc_elt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
rbc_elt.c: from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
rbc_elt.c: from rbc.h:11,
rbc_elt.c: from rbc_elt.c:6:
rbc_elt.c: rbc_elt.c: In function 'rbc_elt_ur_mul':
rbc_elt.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:116:1: error: inlining failed in call to 'always_inline' '_mm_clmulepi64_si128': target specific option mismatch
rbc_elt.c: 116 | _mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I)
rbc_elt.c: | ^~~~~~~~~~~~~~~~~~~~
rbc_elt.c: rbc_elt.c:472:19: note: called from here
rbc_elt.c: 472 | __m128i a1_b1 = _mm_clmulepi64_si128(a, b, 0x11);
rbc_elt.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rbc_elt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
rbc_elt.c: from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
rbc_elt.c: from rbc.h:11,
rbc_elt.c: from rbc_elt.c:6:
rbc_elt.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:116:1: error: inlining failed in call to 'always_inline' '_mm_clmulepi64_si128': target specific option mismatch
rbc_elt.c: 116 | _mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I)
rbc_elt.c: | ^~~~~~~~~~~~~~~~~~~~
rbc_elt.c: rbc_elt.c:470:19: note: called from here
rbc_elt.c: 470 | __m128i a1_b0 = _mm_clmulepi64_si128(a, b, 0x01);
rbc_elt.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rbc_elt.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
rbc_elt.c: from /usr/lib/gcc/x86_64-linux-gnu/10/include/x86intrin.h:32,
rbc_elt.c: from rbc.h:11,
rbc_elt.c: from rbc_elt.c:6:
rbc_elt.c: ...

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(lrpc.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(parsing.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_elt.o):(.bss+0x10): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_qre.o):(.bss+0x20): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_vec.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_vspace.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_poly.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(lrpc.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(parsing.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_elt.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_qre.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_vec.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_vspace.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rolloii192.a(rbc_poly.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rolloii192.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: /home/supercop/benchmarking/supercop-20240425/supercop-data/wolfdale/amd64/lib/libsupercop.a(crypto_core_keccakf160064bits_optimized1600AsmX86_64_constbranchindex-KeccakP-1600-x86-64-gas.o): relocation R_X86_64_32S against `.text' can not be used when making a PIE object; recompile with -fPIE
try.c: collect2: error: ld returned 1 exit status

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