Implementation notes: amd64, cel02, crypto_kem/kyber90s512

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_kem
Primitive: kyber90s512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
8865032121 0 061981 848 1640T:avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9704820613 0 047357 848 1608T:avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9871219885 0 045124 816 1576T:avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
10374220361 0 046613 848 1608T:avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
11685819536 0 044549 840 1576T:avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
61731071007 0 0100781 832 1640T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
66286840663 0 067389 832 1608T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
68093841786 0 068069 832 1608T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
102413252177 0 079173 816 1576T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
112396042325 0 067527 808 1576T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
120188639051 0 064165 824 1576T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

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

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

Compiler output

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

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

Compiler output

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

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

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aes256ctr.c: aes256ctr.c:94:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes256ctr.c: BLOCK1(0x01);
aes256ctr.c: ^
aes256ctr.c: aes256ctr.c:75:11: note: expanded from macro 'BLOCK1'
aes256ctr.c: temp1 = _mm_aeskeygenassist_si128(temp2, IMM); \
aes256ctr.c: ^
aes256ctr.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes256ctr.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aes256ctr.c: ^
aes256ctr.c: aes256ctr.c:95:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes256ctr.c: BLOCK2(0x01);
aes256ctr.c: ^
aes256ctr.c: aes256ctr.c:85:11: note: expanded from macro 'BLOCK2'
aes256ctr.c: temp1 = _mm_aeskeygenassist_si128(temp0, IMM); \
aes256ctr.c: ^
aes256ctr.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes256ctr.c: (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
aes256ctr.c: ^
aes256ctr.c: aes256ctr.c:97:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
aes256ctr.c: BLOCK1(0x02);
aes256ctr.c: ^
aes256ctr.c: aes256ctr.c:75:11: note: expanded from macro 'BLOCK1'
aes256ctr.c: temp1 = _mm_aeskeygenassist_si128(temp2, IMM); \
aes256ctr.c: ^
aes256ctr.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/__wmmintrin_aes.h:62:12: note: expanded from macro '_mm_aeskeygenassist_si128'
aes256ctr.c: ...

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
verify.c: fatal error: error in backend: Cannot select: 0x55958fa73930: v32i16 = scalar_to_vector Constant:i16<1>
verify.c: 0x55958fa5ea00: i16 = Constant<1>
verify.c: In function: crypto_kem_kyber90s512_ref_timingleaks_verify
verify.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
verify.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
verify.c: Target: x86_64-pc-linux-gnu
verify.c: Thread model: posix
verify.c: InstalledDir: /usr/bin
verify.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.
verify.c: clang: note: diagnostic msg:
verify.c: ********************
verify.c:
verify.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
verify.c: Preprocessed source(s) and associated run script(s) are located at:
verify.c: clang: note: diagnostic msg: /tmp/verify-3c94bf.c
verify.c: clang: note: diagnostic msg: /tmp/verify-3c94bf.sh
verify.c: clang: note: diagnostic msg:
verify.c:
verify.c: ********************

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
verify.c: fatal error: error in backend: Cannot select: 0x555bc025fa40: v32i16 = scalar_to_vector Constant:i16<1>
verify.c: 0x555bc025b110: i16 = Constant<1>
verify.c: In function: crypto_kem_kyber90s512_ref_timingleaks_verify
verify.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
verify.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
verify.c: Target: x86_64-pc-linux-gnu
verify.c: Thread model: posix
verify.c: InstalledDir: /usr/bin
verify.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.
verify.c: clang: note: diagnostic msg:
verify.c: ********************
verify.c:
verify.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
verify.c: Preprocessed source(s) and associated run script(s) are located at:
verify.c: clang: note: diagnostic msg: /tmp/verify-e670c8.c
verify.c: clang: note: diagnostic msg: /tmp/verify-e670c8.sh
verify.c: clang: note: diagnostic msg:
verify.c:
verify.c: ********************

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
verify.c: fatal error: error in backend: Cannot select: 0x555f57e11910: v32i16 = scalar_to_vector Constant:i16<1>
verify.c: 0x555f57e062b0: i16 = Constant<1>
verify.c: In function: crypto_kem_kyber90s512_ref_timingleaks_verify
verify.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
verify.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
verify.c: Target: x86_64-pc-linux-gnu
verify.c: Thread model: posix
verify.c: InstalledDir: /usr/bin
verify.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.
verify.c: clang: note: diagnostic msg:
verify.c: ********************
verify.c:
verify.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
verify.c: Preprocessed source(s) and associated run script(s) are located at:
verify.c: clang: note: diagnostic msg: /tmp/verify-fb423e.c
verify.c: clang: note: diagnostic msg: /tmp/verify-fb423e.sh
verify.c: clang: note: diagnostic msg:
verify.c:
verify.c: ********************

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