Implementation notes: amd64, cel02, crypto_kem/hqcrmrs128

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: hqcrmrs128
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
109242069782 8 24576125776 904 36232T:avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
222140638090 8 2457690856 904 36200T:avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
254714037167 8 2457689488 904 36200T:avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
262299627082 8 2457678232 896 36168T:avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
fft.c: fatal error: error in backend: Cannot select: 0x555beb830820: v32i16 = X86ISD::VBROADCAST 0x555beb83dc70
fft.c: 0x555beb83dc70: i16,ch = CopyFromReg 0x555beb763970, Register:i16 %vreg58
fft.c: 0x555beb83cc60: i16 = Register %vreg58
fft.c: In function: fft_rec
fft.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
fft.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
fft.c: Target: x86_64-pc-linux-gnu
fft.c: Thread model: posix
fft.c: InstalledDir: /usr/bin
fft.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
fft.c: clang: note: diagnostic msg:
fft.c: ********************
fft.c:
fft.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
fft.c: Preprocessed source(s) and associated run script(s) are located at:
fft.c: clang: note: diagnostic msg: /tmp/fft-b94083.c
fft.c: clang: note: diagnostic msg: /tmp/fft-b94083.sh
fft.c: clang: note: diagnostic msg:
fft.c:
fft.c: ********************

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

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
fft.c: fatal error: error in backend: Cannot select: 0x55bc9476ca00: v32i16 = X86ISD::VBROADCAST 0x55bc94786600
fft.c: 0x55bc94786600: i16,ch = CopyFromReg 0x55bc946aba30, Register:i16 %vreg58
fft.c: 0x55bc947855f0: i16 = Register %vreg58
fft.c: In function: fft_rec
fft.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
fft.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
fft.c: Target: x86_64-pc-linux-gnu
fft.c: Thread model: posix
fft.c: InstalledDir: /usr/bin
fft.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
fft.c: clang: note: diagnostic msg:
fft.c: ********************
fft.c:
fft.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
fft.c: Preprocessed source(s) and associated run script(s) are located at:
fft.c: clang: note: diagnostic msg: /tmp/fft-6808c3.c
fft.c: clang: note: diagnostic msg: /tmp/fft-6808c3.sh
fft.c: clang: note: diagnostic msg:
fft.c:
fft.c: ********************

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

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
fft.c: fatal error: error in backend: Cannot select: 0x557b43550b80: v32i16 = X86ISD::VBROADCAST 0x557b43579b70
fft.c: 0x557b43579b70: i16,ch = CopyFromReg 0x557b4349e970, Register:i16 %vreg58
fft.c: 0x557b43578b60: i16 = Register %vreg58
fft.c: In function: fft_rec
fft.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
fft.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
fft.c: Target: x86_64-pc-linux-gnu
fft.c: Thread model: posix
fft.c: InstalledDir: /usr/bin
fft.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
fft.c: clang: note: diagnostic msg:
fft.c: ********************
fft.c:
fft.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
fft.c: Preprocessed source(s) and associated run script(s) are located at:
fft.c: clang: note: diagnostic msg: /tmp/fft-84814d.c
fft.c: clang: note: diagnostic msg: /tmp/fft-84814d.sh
fft.c: clang: note: diagnostic msg:
fft.c:
fft.c: ********************

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

Compiler output

Implementation: T:avx
Security model: timingleaks
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
reed_muller.c: reed_muller.c:112:33: error: cannot convert between vector values of different size ('uint16_t' (aka 'unsigned short') and 'i16x16' (vector of 16 'int16_t' values))
reed_muller.c: dst->v[part] = src->u16[part] >> count_vector & 1;
reed_muller.c: ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~
reed_muller.c: reed_muller.c:117:40: error: cannot convert between vector values of different size ('uint16_t' (aka 'unsigned short') and 'i16x16' (vector of 16 'int16_t' values))
reed_muller.c: dst->v[part] += src[copy].u16[part] >> count_vector & 1;
reed_muller.c: ~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~
reed_muller.c: reed_muller.c:325:13: warning: implicit declaration of function '_bit_scan_forward' is invalid in C99 [-Wimplicit-function-declaration]
reed_muller.c: message |= _bit_scan_forward(peak_mask.v[0] + peak_mask.v[8]);
reed_muller.c: ^
reed_muller.c: 1 warning and 2 errors generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -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
gf.c: gf.c:116:16: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
gf.c: __m128i vab = _mm_clmulepi64_si128(va, vb, 0);
gf.c: ^
gf.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_pclmul.h:27:13: note: expanded from macro '_mm_clmulepi64_si128'
gf.c: ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(__X), \
gf.c: ^
gf.c: 1 error generated.

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