Implementation notes: amd64, cel02, crypto_kem/ntruhps4096821

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: ntruhps4096821
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
118272180236 81120 0246565 81960 1640avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
214552145851 81120 0207445 81952 1576avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
222606150274 81120 0212997 81960 1608avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
224580150889 81120 0214077 81960 1608avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
238626152056 81120 0213692 81928 1576avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
706896026265 0 092647 840 1640refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
117985925556 0 067132 800 1576refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
131362046098 0 069325 832 1608refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1319146013519 0 076882 808 1576refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
134540625811 0 068493 832 1608refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
158205365302 0 066765 824 1576refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: avx2
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
cmov.c: fatal error: error in backend: Cannot select: 0x561457afaee0: v64i8 = X86ISD::VBROADCAST 0x561457afc240
cmov.c: 0x561457afc240: i8,ch = CopyFromReg 0x561457a66ff0, Register:i8 %vreg0
cmov.c: 0x561457afc370: i8 = Register %vreg0
cmov.c: In function: crypto_kem_ntruhps4096821_avx2_constbranchindex_cmov
cmov.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
cmov.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
cmov.c: Target: x86_64-pc-linux-gnu
cmov.c: Thread model: posix
cmov.c: InstalledDir: /usr/bin
cmov.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.
cmov.c: clang: note: diagnostic msg:
cmov.c: ********************
cmov.c:
cmov.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
cmov.c: Preprocessed source(s) and associated run script(s) are located at:
cmov.c: clang: note: diagnostic msg: /tmp/cmov-c22755.c
cmov.c: clang: note: diagnostic msg: /tmp/cmov-c22755.sh
cmov.c: clang: note: diagnostic msg:
cmov.c:
cmov.c: ********************

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

Compiler output

Implementation: avx2
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
cmov.c: fatal error: error in backend: Cannot select: 0x55f15bd9e770: v64i8 = X86ISD::VBROADCAST 0x55f15bd9f2c0
cmov.c: 0x55f15bd9f2c0: i8,ch = CopyFromReg 0x55f15bd0a0e0, Register:i8 %vreg0
cmov.c: 0x55f15bd9f3f0: i8 = Register %vreg0
cmov.c: In function: crypto_kem_ntruhps4096821_avx2_constbranchindex_cmov
cmov.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
cmov.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
cmov.c: Target: x86_64-pc-linux-gnu
cmov.c: Thread model: posix
cmov.c: InstalledDir: /usr/bin
cmov.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.
cmov.c: clang: note: diagnostic msg:
cmov.c: ********************
cmov.c:
cmov.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
cmov.c: Preprocessed source(s) and associated run script(s) are located at:
cmov.c: clang: note: diagnostic msg: /tmp/cmov-6631ed.c
cmov.c: clang: note: diagnostic msg: /tmp/cmov-6631ed.sh
cmov.c: clang: note: diagnostic msg:
cmov.c:
cmov.c: ********************

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

Compiler output

Implementation: avx2
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
cmov.c: fatal error: error in backend: Cannot select: 0x56097b32d640: v64i8 = X86ISD::VBROADCAST 0x56097b32e190
cmov.c: 0x56097b32e190: i8,ch = CopyFromReg 0x56097b298ff0, Register:i8 %vreg0
cmov.c: 0x56097b32e2c0: i8 = Register %vreg0
cmov.c: In function: crypto_kem_ntruhps4096821_avx2_constbranchindex_cmov
cmov.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
cmov.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
cmov.c: Target: x86_64-pc-linux-gnu
cmov.c: Thread model: posix
cmov.c: InstalledDir: /usr/bin
cmov.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.
cmov.c: clang: note: diagnostic msg:
cmov.c: ********************
cmov.c:
cmov.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
cmov.c: Preprocessed source(s) and associated run script(s) are located at:
cmov.c: clang: note: diagnostic msg: /tmp/cmov-881555.c
cmov.c: clang: note: diagnostic msg: /tmp/cmov-881555.sh
cmov.c: clang: note: diagnostic msg:
cmov.c:
cmov.c: ********************

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

Compiler output

Implementation: avx2
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
poly_s3_inv.c: poly_s3_inv.c:416:11: error: always_inline function '_mm256_set_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F0[0] = _mm256_set_epi32(-1,-1,-1,-1,-1,-1,-1,-1);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:417:11: error: always_inline function '_mm256_set_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F0[1] = _mm256_set_epi32(-1,-1,-1,-1,-1,-1,-1,-1);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:418:11: error: always_inline function '_mm256_set_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F0[2] = _mm256_set_epi32(-1,-1,-1,-1,-1,-1,-1,-1);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:419:11: error: always_inline function '_mm256_set_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F0[3] = _mm256_set_epi32(0,8191,0,8191,0,8191,0,16383);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:420:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F1[0] = _mm256_set1_epi32(0);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:421:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F1[1] = _mm256_set1_epi32(0);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:422:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F1[2] = _mm256_set1_epi32(0);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:423:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: F1[3] = _mm256_set1_epi32(0);
poly_s3_inv.c: ^
poly_s3_inv.c: poly_s3_inv.c:425:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'sse4.2', but would be inlined into function '__poly_S3_inv' that is compiled without support for 'sse4.2'
poly_s3_inv.c: ...

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

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
cmov.c: fatal error: error in backend: Cannot select: 0x55a713fc9680: v64i8 = X86ISD::VBROADCAST 0x55a713fca1d0
cmov.c: 0x55a713fca1d0: i8,ch = CopyFromReg 0x55a713f34ff0, Register:i8 %vreg0
cmov.c: 0x55a713fca300: i8 = Register %vreg0
cmov.c: In function: crypto_kem_ntruhps4096821_ref_constbranchindex_cmov
cmov.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
cmov.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
cmov.c: Target: x86_64-pc-linux-gnu
cmov.c: Thread model: posix
cmov.c: InstalledDir: /usr/bin
cmov.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.
cmov.c: clang: note: diagnostic msg:
cmov.c: ********************
cmov.c:
cmov.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
cmov.c: Preprocessed source(s) and associated run script(s) are located at:
cmov.c: clang: note: diagnostic msg: /tmp/cmov-59b852.c
cmov.c: clang: note: diagnostic msg: /tmp/cmov-59b852.sh
cmov.c: clang: note: diagnostic msg:
cmov.c:
cmov.c: ********************

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

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
cmov.c: fatal error: error in backend: Cannot select: 0x559def885580: v64i8 = X86ISD::VBROADCAST 0x559def88fb20
cmov.c: 0x559def88fb20: i8,ch = CopyFromReg 0x559def7fc0e0, Register:i8 %vreg0
cmov.c: 0x559def88fc50: i8 = Register %vreg0
cmov.c: In function: crypto_kem_ntruhps4096821_ref_constbranchindex_cmov
cmov.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
cmov.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
cmov.c: Target: x86_64-pc-linux-gnu
cmov.c: Thread model: posix
cmov.c: InstalledDir: /usr/bin
cmov.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.
cmov.c: clang: note: diagnostic msg:
cmov.c: ********************
cmov.c:
cmov.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
cmov.c: Preprocessed source(s) and associated run script(s) are located at:
cmov.c: clang: note: diagnostic msg: /tmp/cmov-89cbca.c
cmov.c: clang: note: diagnostic msg: /tmp/cmov-89cbca.sh
cmov.c: clang: note: diagnostic msg:
cmov.c:
cmov.c: ********************

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

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
cmov.c: fatal error: error in backend: Cannot select: 0x561a9b42db80: v64i8 = X86ISD::VBROADCAST 0x561a9b42e6d0
cmov.c: 0x561a9b42e6d0: i8,ch = CopyFromReg 0x561a9b39a030, Register:i8 %vreg0
cmov.c: 0x561a9b42e800: i8 = Register %vreg0
cmov.c: In function: crypto_kem_ntruhps4096821_ref_constbranchindex_cmov
cmov.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
cmov.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
cmov.c: Target: x86_64-pc-linux-gnu
cmov.c: Thread model: posix
cmov.c: InstalledDir: /usr/bin
cmov.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.
cmov.c: clang: note: diagnostic msg:
cmov.c: ********************
cmov.c:
cmov.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
cmov.c: Preprocessed source(s) and associated run script(s) are located at:
cmov.c: clang: note: diagnostic msg: /tmp/cmov-865c86.c
cmov.c: clang: note: diagnostic msg: /tmp/cmov-865c86.sh
cmov.c: clang: note: diagnostic msg:
cmov.c:
cmov.c: ********************

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