Implementation notes: amd64, raptor, crypto_kem/rqc256

Computer: raptor
Microarchitecture: amd64; Raptor Cove (b06a2)
Architecture: amd64
CPU ID: GenuineIntel-000b06a2-40-bfebfbff
SUPERCOP version: 20231107
Operation: crypto_kem
Primitive: rqc256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1663889840710 0 2495408 868 1736T:avxclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111320230530
1665975537833 0 2488584 868 1736T:avxclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111320230530
1676404242306 0 2495238 852 1800T:avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111320230530
1677283538622 0 2493136 868 1736T:avxclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111320230530
1701263330666 0 2482088 852 1832T:avxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111320230530
1719135638729 0 2489590 852 1800T:avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111320230530
1800563831040 0 2481302 852 1800T:avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111320230530
1837117627851 0 2476890 844 1768T:avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111320230530

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: warning: crypto_stream_chacha20_moon_avx2_64_constbranchindex-chacha.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/ld: warning: crypto_stream_chacha20_moon_avx2_64_constbranchindex-chacha.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
measure.c: /usr/bin/ld: warning: crypto_hashblocks_sha512_avx2_constbranchindex-inner.o: missing .note.GNU-stack section implies executable stack
measure.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

Number of similar (compiler,implementation) pairs: 8, 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
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:avx
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rbc_elt.c: rbc_elt.c:526: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/lib64/clang/16/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:528: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/lib64/clang/16/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:529: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/lib64/clang/16/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:531:19: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
rbc_elt.c: __m128i a0_b2 = _mm_clmulepi64_si128(a, d, 0x00);
rbc_elt.c: ^
rbc_elt.c: /usr/lib64/clang/16/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:532:19: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
rbc_elt.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -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_rqc256.a(parsing.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_elt.o):(.bss+0x10): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_qre.o):(.bss+0x20): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_vec.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_vspace.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rqc.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(gabidulin.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(qpoly.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_poly.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: warning: crypto_stream_chacha20_moon_avx2_64_constbranchindex-chacha.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: clang-16: 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_rqc256.a(parsing.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_elt.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_qre.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_vec.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_vspace.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rqc.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(gabidulin.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(qpoly.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_kem_rqc256.a(rbc_poly.o):(.bss+0x0): multiple definition of `RBC_SQR_LOOKUP_TABLE'; libcrypto_kem_rqc256.a(kem.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: warning: crypto_stream_chacha20_moon_avx2_64_constbranchindex-chacha.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
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