Implementation notes: amd64, cel02, crypto_sign/dilithium2

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_sign
Primitive: dilithium2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
960196125274 0 0152685 832 1632T:avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
964148158003 0 0189045 832 1664T:avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
975648124433 0 0150677 824 1600T:avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
985684126762 0 0154589 832 1632T:avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
420127220987 0 048645 832 1632T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
435176647830 0 078613 832 1664T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
445769226150 0 053794 808 1600T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
449581219872 0 047125 832 1632T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
501506018818 0 044885 824 1600T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Checksum failure

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
868f47c3fcafee75231001c5376e18ebab4b6ca594766c2df406781989719d2f
Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
poly.c: fatal error: error in backend: Cannot select: 0x55c3c186ba40: v32i1 = BUILD_VECTOR Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.c: 0x55c3c18823a0: i1 = Constant<0>
poly.c: 0x55c3c186bb70: i1 = Constant<-1>
poly.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
poly.c: fatal error: error in backend: Cannot select: 0x557c148d16b0: v32i1 = BUILD_VECTOR Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.c: 0x557c14897be0: i1 = Constant<0>
poly.c: 0x557c148bcad0: i1 = Constant<-1>
poly.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
poly.c: fatal error: error in backend: Cannot select: 0x55ec0b110a10: v32i1 = BUILD_VECTOR Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.c: 0x55ec0b127350: i1 = Constant<0>
poly.c: 0x55ec0b110b40: i1 = Constant<-1>
poly.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 -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
poly.c: fatal error: error in backend: Cannot select: 0x5623e133fba0: v32i1 = BUILD_VECTOR Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>, Constant:i1<0>, Constant:i1<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: 0x5623e133db80: i1 = Constant<0>
poly.c: 0x5623e133bef0: i1 = Constant<-1>
poly.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -Os -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
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_sign_dilithium2_avx2_timingleaks_KeccakP1600times4_AddLanesAll' that is compiled without support for 'sse4.2'
KeccakP-1600-times4-SIMD256.c: Xor_In4( 0 );
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:135:42: note: expanded from macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: #define Xor_In4( argIndex ) lanes0 = LOAD256u( curData0[argIndex]),\
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:44:37: note: expanded from macro 'LOAD256u'
KeccakP-1600-times4-SIMD256.c: #define LOAD256u(a) _mm256_loadu_si256((const V256 *)&(a))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_sign_dilithium2_avx2_timingleaks_KeccakP1600times4_AddLanesAll' that is compiled without support for 'sse4.2'
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:136:42: note: expanded from macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: lanes1 = LOAD256u( curData1[argIndex]),\
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:44:37: note: expanded from macro 'LOAD256u'
KeccakP-1600-times4-SIMD256.c: #define LOAD256u(a) _mm256_loadu_si256((const V256 *)&(a))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_sign_dilithium2_avx2_timingleaks_KeccakP1600times4_AddLanesAll' that is compiled without support for 'sse4.2'
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:137:42: note: expanded from macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.c: lanes2 = LOAD256u( curData2[argIndex]),\
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:44:37: note: expanded from macro 'LOAD256u'
KeccakP-1600-times4-SIMD256.c: #define LOAD256u(a) _mm256_loadu_si256((const V256 *)&(a))
KeccakP-1600-times4-SIMD256.c: ^
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:146:9: error: always_inline function '_mm256_loadu_si256' requires target feature 'sse4.2', but would be inlined into function 'crypto_sign_dilithium2_avx2_timingleaks_KeccakP1600times4_AddLanesAll' that is compiled without support for 'sse4.2'
KeccakP-1600-times4-SIMD256.c: KeccakP-1600-times4-SIMD256.c:138:42: note: expanded from macro 'Xor_In4'
KeccakP-1600-times4-SIMD256.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
try.c: fatal error: error in backend: Cannot select: 0x5576212eb620: v4i64 = X86ISD::VTRUNC 0x5576212eb4f0
try.c: 0x5576212eb4f0: v16i32 = vselect 0x5576212e5ff0, 0x557621277a10, 0x5576212eb3c0
try.c: 0x5576212e5ff0: v4i1 = X86ISD::PCMPGTM 0x5576212cec80, 0x5576212ca810
try.c: 0x5576212cec80: v4i64 = X86ISD::VBROADCAST 0x557621274bb0
try.c: 0x557621274bb0: i64,ch = load<LD8[%lsr.iv6971]> 0x5576211df9d0, 0x5576212c1fd0, undef:i64
try.c: 0x5576212c1fd0: i64,ch = CopyFromReg 0x5576211df9d0, Register:i64 %vreg50
try.c: 0x5576212caa70: i64 = Register %vreg50
try.c: 0x557621276080: i64 = undef
try.c: 0x5576212ca810: v4i64,ch = CopyFromReg 0x5576211df9d0, Register:v4i64 %vreg13
try.c: 0x5576212cf4d0: v4i64 = Register %vreg13
try.c: 0x557621277a10: v16i32 = X86ISD::VBROADCAST 0x5576212ceee0
try.c: 0x5576212ceee0: i32,ch = load<LD4[ConstantPool]> 0x5576211df9d0, 0x55762126f920, undef:i64
try.c: 0x55762126f920: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5576212b8890: i64 = TargetConstantPool<i32 1> 0
try.c: 0x557621276080: i64 = undef
try.c: 0x5576212eb3c0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.c: 0x5576212eb290: i32 = Constant<0>
try.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
try.c: fatal error: error in backend: Cannot select: 0x55cc49c5c620: v4i64 = X86ISD::VTRUNC 0x55cc49c5c4f0
try.c: 0x55cc49c5c4f0: v16i32 = vselect 0x55cc49c6d350, 0x55cc49be8f10, 0x55cc49c5c3c0
try.c: 0x55cc49c6d350: v4i1 = X86ISD::PCMPGTM 0x55cc49c54fe0, 0x55cc49c50b70
try.c: 0x55cc49c54fe0: v4i64 = X86ISD::VBROADCAST 0x55cc49be93d0
try.c: 0x55cc49be93d0: i64,ch = load<LD8[%lsr.iv6971]> 0x55cc49b4ea30, 0x55cc49c04630, undef:i64
try.c: 0x55cc49c04630: i64,ch = CopyFromReg 0x55cc49b4ea30, Register:i64 %vreg50
try.c: 0x55cc49c50dd0: i64 = Register %vreg50
try.c: 0x55cc49beccd0: i64 = undef
try.c: 0x55cc49c50b70: v4i64,ch = CopyFromReg 0x55cc49b4ea30, Register:v4i64 %vreg13
try.c: 0x55cc49c55830: v4i64 = Register %vreg13
try.c: 0x55cc49be8f10: v16i32 = X86ISD::VBROADCAST 0x55cc49c55240
try.c: 0x55cc49c55240: i32,ch = load<LD4[ConstantPool]> 0x55cc49b4ea30, 0x55cc49beb8b0, undef:i64
try.c: 0x55cc49beb8b0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55cc49bed650: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55cc49beccd0: i64 = undef
try.c: 0x55cc49c5c3c0: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.c: 0x55cc49c5c290: i32 = Constant<0>
try.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
try.c: fatal error: error in backend: Cannot select: 0x5598f73e9ac0: v4i64 = X86ISD::VTRUNC 0x5598f73e9990
try.c: 0x5598f73e9990: v16i32 = vselect 0x5598f73f9b10, 0x5598f738b6a0, 0x5598f73e9860
try.c: 0x5598f73f9b10: v4i1 = X86ISD::PCMPGTM 0x5598f73e2950, 0x5598f73de4e0
try.c: 0x5598f73e2950: v4i64 = X86ISD::VBROADCAST 0x5598f7384a30
try.c: 0x5598f7384a30: i64,ch = load<LD8[%lsr.iv6971]> 0x5598f72f3980, 0x5598f73d9340, undef:i64
try.c: 0x5598f73d9340: i64,ch = CopyFromReg 0x5598f72f3980, Register:i64 %vreg50
try.c: 0x5598f73de740: i64 = Register %vreg50
try.c: 0x5598f7389d10: i64 = undef
try.c: 0x5598f73de4e0: v4i64,ch = CopyFromReg 0x5598f72f3980, Register:v4i64 %vreg13
try.c: 0x5598f73e31a0: v4i64 = Register %vreg13
try.c: 0x5598f738b6a0: v16i32 = X86ISD::VBROADCAST 0x5598f73e2bb0
try.c: 0x5598f73e2bb0: i32,ch = load<LD4[ConstantPool]> 0x5598f72f3980, 0x5598f7384010, undef:i64
try.c: 0x5598f7384010: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5598f737db80: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5598f7389d10: i64 = undef
try.c: 0x5598f73e9860: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: 0x5598f73e9730: i32 = Constant<0>
try.c: ...

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