Implementation notes: amd64, cel02, crypto_hashblocks/sha256

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hashblocks
Primitive: sha256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1769010871 0 024765 824 808inplacegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2031611726 0 022100 816 776inplacegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2040811728 0 022068 816 776refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2671012542 0 023938 800 736inplaceclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2718412677 0 024082 800 736refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3276010940 0 021524 816 776refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3313410935 0 024765 824 808refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3440211229 0 020624 800 776refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3479811144 0 020544 800 776inplacegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3508810876 0 021492 816 776inplacegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3592611934 0 021484 792 736refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3843611866 0 021420 792 736inplaceclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: dolbeau/amd64-sha
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: DO16ROUNDS(i0, i1, i2, i3, c0, c1, c2, c3);
blocks.c: ^
blocks.c: blocks.c:129:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: x1 = _mm_sha256rnds2_epu32(s1, s0, h0); \
blocks.c: ^
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: blocks.c:131:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: x0 = _mm_sha256rnds2_epu32(s0, x1, h0); \
blocks.c: ^
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: blocks.c:134:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: s1 = _mm_sha256rnds2_epu32(x1, x0, h1); \
blocks.c: ^
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: blocks.c:136:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: s0 = _mm_sha256rnds2_epu32(x0, s1, h1); \
blocks.c: ^
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: blocks.c:139:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: x1 = _mm_sha256rnds2_epu32(s1, s0, h0); \
blocks.c: ^
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: blocks.c:141:8: note: expanded from macro 'DO16ROUNDS'
blocks.c: x0 = _mm_sha256rnds2_epu32(s0, x1, h0); \
blocks.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/amd64-sha
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/amd64-sha
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/amd64-sha
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/amd64-sha

Compiler output

Implementation: dolbeau/amd64-sha
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
blocks.c: blocks.c:85:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'ssse3'
blocks.c: d0 = _mm_shuffle_epi8(d0, vperm);
blocks.c: ^
blocks.c: blocks.c:86:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'ssse3'
blocks.c: d1 = _mm_shuffle_epi8(d1, vperm);
blocks.c: ^
blocks.c: blocks.c:97:7: error: '__builtin_ia32_palignr128' needs target feature ssse3
blocks.c: d0 = _mm_alignr_epi8(d0, d1, 0x08);
blocks.c: ^
blocks.c: /usr/lib/llvm-3.8/bin/../lib/clang/3.8.1/include/tmmintrin.h:69:12: note: expanded from macro '_mm_alignr_epi8'
blocks.c: (__m128i)__builtin_ia32_palignr128((__v16qi)(__m128i)(a), \
blocks.c: ^
blocks.c: blocks.c:113:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'ssse3'
blocks.c: i0 = _mm_shuffle_epi8(i0, vperm);
blocks.c: ^
blocks.c: blocks.c:114:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'ssse3'
blocks.c: i1 = _mm_shuffle_epi8(i1, vperm);
blocks.c: ^
blocks.c: blocks.c:115:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'ssse3'
blocks.c: i2 = _mm_shuffle_epi8(i2, vperm);
blocks.c: ^
blocks.c: blocks.c:116:8: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'ssse3'
blocks.c: i3 = _mm_shuffle_epi8(i3, vperm);
blocks.c: ^
blocks.c: blocks.c:176:3: error: always_inline function '_mm_sha256rnds2_epu32' requires target feature 'sha', but would be inlined into function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex' that is compiled without support for 'sha'
blocks.c: ...

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

Compiler output

Implementation: dolbeau/amd64-sha
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
blocks.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/immintrin.h:71:0,
blocks.c: from blocks.c:37:
blocks.c: blocks.c: In function 'crypto_hashblocks_sha256_dolbeau_amd64_sha_constbranchindex':
blocks.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/shaintrin.h:87:1: error: inlining failed in call to always_inline '_mm_sha256rnds2_epu32': target specific option mismatch
blocks.c: _mm_sha256rnds2_epu32 (__m128i __A, __m128i __B, __m128i __C)
blocks.c: ^~~~~~~~~~~~~~~~~~~~~
blocks.c: blocks.c:146:6: note: called from here
blocks.c: s0 = _mm_sha256rnds2_epu32(x0, s1, h1)
blocks.c: ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: blocks.c:188:3: note: in expansion of macro 'DO16ROUNDS'
blocks.c: DO16ROUNDS(j0, j1, j2, j3, cc, cd, ce, cf);
blocks.c: ^~~~~~~~~~
blocks.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/immintrin.h:71:0,
blocks.c: from blocks.c:37:
blocks.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/shaintrin.h:87:1: error: inlining failed in call to always_inline '_mm_sha256rnds2_epu32': target specific option mismatch
blocks.c: _mm_sha256rnds2_epu32 (__m128i __A, __m128i __B, __m128i __C)
blocks.c: ^~~~~~~~~~~~~~~~~~~~~
blocks.c: blocks.c:144:6: note: called from here
blocks.c: s1 = _mm_sha256rnds2_epu32(x1, x0, h1); \
blocks.c: ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
blocks.c: blocks.c:188:3: note: in expansion of macro 'DO16ROUNDS'
blocks.c: DO16ROUNDS(j0, j1, j2, j3, cc, cd, ce, cf);
blocks.c: ^~~~~~~~~~
blocks.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/immintrin.h:71:0,
blocks.c: from blocks.c:37:
blocks.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-sha
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-sha
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-sha
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/amd64-sha

Compiler output

Implementation: inplace
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x5639d1699aa0: v4i64 = X86ISD::VTRUNC 0x5639d1699970
try.c: 0x5639d1699970: v16i32 = vselect 0x5639d16ac3f0, 0x5639d1633850, 0x5639d1699840
try.c: 0x5639d16ac3f0: v4i1 = X86ISD::PCMPGTM 0x5639d1691860, 0x5639d168d3f0
try.c: 0x5639d1691860: v4i64 = X86ISD::VBROADCAST 0x5639d16309f0
try.c: 0x5639d16309f0: i64,ch = load<LD8[%lsr.iv6971]> 0x5639d15a2950, 0x5639d167b6c0, undef:i64
try.c: 0x5639d167b6c0: i64,ch = CopyFromReg 0x5639d15a2950, Register:i64 %vreg50
try.c: 0x5639d168d650: i64 = Register %vreg50
try.c: 0x5639d1631ec0: i64 = undef
try.c: 0x5639d168d3f0: v4i64,ch = CopyFromReg 0x5639d15a2950, Register:v4i64 %vreg13
try.c: 0x5639d16920b0: v4i64 = Register %vreg13
try.c: 0x5639d1633850: v16i32 = X86ISD::VBROADCAST 0x5639d1691ac0
try.c: 0x5639d1691ac0: i32,ch = load<LD4[ConstantPool]> 0x5639d15a2950, 0x5639d1635d00, undef:i64
try.c: 0x5639d1635d00: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5639d162f5b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5639d1631ec0: i64 = undef
try.c: 0x5639d1699840: 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: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: i32 = Constant<0>
try.c: 0x5639d1699710: 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 inplace

Compiler output

Implementation: inplace
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x563234214280: v4i64 = X86ISD::VTRUNC 0x563234214150
try.c: 0x563234214150: v16i32 = vselect 0x5632341f82e0, 0x5632341aa6c0, 0x563234214020
try.c: 0x5632341f82e0: v4i1 = X86ISD::PCMPGTM 0x5632341f0120, 0x5632341eb4f0
try.c: 0x5632341f0120: v4i64 = X86ISD::VBROADCAST 0x5632341aab80
try.c: 0x5632341aab80: i64,ch = load<LD8[%lsr.iv6971]> 0x5632340e9a30, 0x56323418ebe0, undef:i64
try.c: 0x56323418ebe0: i64,ch = CopyFromReg 0x5632340e9a30, Register:i64 %vreg50
try.c: 0x5632341eb750: i64 = Register %vreg50
try.c: 0x5632341876c0: i64 = undef
try.c: 0x5632341eb4f0: v4i64,ch = CopyFromReg 0x5632340e9a30, Register:v4i64 %vreg13
try.c: 0x5632341f0970: v4i64 = Register %vreg13
try.c: 0x5632341aa6c0: v16i32 = X86ISD::VBROADCAST 0x5632341f0380
try.c: 0x5632341f0380: i32,ch = load<LD4[ConstantPool]> 0x5632340e9a30, 0x56323419ac30, undef:i64
try.c: 0x56323419ac30: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x563234188040: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5632341876c0: i64 = undef
try.c: 0x563234214020: 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: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: i32 = Constant<0>
try.c: 0x563234213ef0: 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 inplace

Compiler output

Implementation: inplace
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55c8cf84aa80: v4i64 = X86ISD::VTRUNC 0x55c8cf84a950
try.c: 0x55c8cf84a950: v16i32 = vselect 0x55c8cf847460, 0x55c8cf7e77e0, 0x55c8cf84a820
try.c: 0x55c8cf847460: v4i1 = X86ISD::PCMPGTM 0x55c8cf842a40, 0x55c8cf83e5d0
try.c: 0x55c8cf842a40: v4i64 = X86ISD::VBROADCAST 0x55c8cf7e3960
try.c: 0x55c8cf7e3960: i64,ch = load<LD8[%lsr.iv6971]> 0x55c8cf753950, 0x55c8cf82ca70, undef:i64
try.c: 0x55c8cf82ca70: i64,ch = CopyFromReg 0x55c8cf753950, Register:i64 %vreg50
try.c: 0x55c8cf83e830: i64 = Register %vreg50
try.c: 0x55c8cf7e5e50: i64 = undef
try.c: 0x55c8cf83e5d0: v4i64,ch = CopyFromReg 0x55c8cf753950, Register:v4i64 %vreg13
try.c: 0x55c8cf843290: v4i64 = Register %vreg13
try.c: 0x55c8cf7e77e0: v16i32 = X86ISD::VBROADCAST 0x55c8cf842ca0
try.c: 0x55c8cf842ca0: i32,ch = load<LD4[ConstantPool]> 0x55c8cf753950, 0x55c8cf7e2f40, undef:i64
try.c: 0x55c8cf7e2f40: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c8cf82dc70: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c8cf7e5e50: i64 = undef
try.c: 0x55c8cf84a820: 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: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: i32 = Constant<0>
try.c: 0x55c8cf84a6f0: 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 inplace

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55c34a9e7970: v4i64 = X86ISD::VTRUNC 0x55c34a9e7840
try.c: 0x55c34a9e7840: v16i32 = vselect 0x55c34a9edcf0, 0x55c34a985fb0, 0x55c34a9e7710
try.c: 0x55c34a9edcf0: v4i1 = X86ISD::PCMPGTM 0x55c34a9e2340, 0x55c34a9dded0
try.c: 0x55c34a9e2340: v4i64 = X86ISD::VBROADCAST 0x55c34a9a84e0
try.c: 0x55c34a9a84e0: i64,ch = load<LD8[%lsr.iv6971]> 0x55c34a8f2950, 0x55c34a98a420, undef:i64
try.c: 0x55c34a98a420: i64,ch = CopyFromReg 0x55c34a8f2950, Register:i64 %vreg50
try.c: 0x55c34a9de130: i64 = Register %vreg50
try.c: 0x55c34a984620: i64 = undef
try.c: 0x55c34a9dded0: v4i64,ch = CopyFromReg 0x55c34a8f2950, Register:v4i64 %vreg13
try.c: 0x55c34a9e2b90: v4i64 = Register %vreg13
try.c: 0x55c34a985fb0: v16i32 = X86ISD::VBROADCAST 0x55c34a9e25a0
try.c: 0x55c34a9e25a0: i32,ch = load<LD4[ConstantPool]> 0x55c34a8f2950, 0x55c34a9a7ac0, undef:i64
try.c: 0x55c34a9a7ac0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c34a9d5700: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c34a984620: i64 = undef
try.c: 0x55c34a9e7710: 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: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: i32 = Constant<0>
try.c: 0x55c34a9e75e0: 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 ref

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55bc0f248f40: v4i64 = X86ISD::VTRUNC 0x55bc0f248e10
try.c: 0x55bc0f248e10: v16i32 = vselect 0x55bc0f23e090, 0x55bc0f1c6820, 0x55bc0f248ce0
try.c: 0x55bc0f23e090: v4i1 = X86ISD::PCMPGTM 0x55bc0f225880, 0x55bc0f221410
try.c: 0x55bc0f225880: v4i64 = X86ISD::VBROADCAST 0x55bc0f1c6ce0
try.c: 0x55bc0f1c6ce0: i64,ch = load<LD8[%lsr.iv6971]> 0x55bc0f11ea30, 0x55bc0f1be460, undef:i64
try.c: 0x55bc0f1be460: i64,ch = CopyFromReg 0x55bc0f11ea30, Register:i64 %vreg50
try.c: 0x55bc0f221670: i64 = Register %vreg50
try.c: 0x55bc0f1d0c70: i64 = undef
try.c: 0x55bc0f221410: v4i64,ch = CopyFromReg 0x55bc0f11ea30, Register:v4i64 %vreg13
try.c: 0x55bc0f2260d0: v4i64 = Register %vreg13
try.c: 0x55bc0f1c6820: v16i32 = X86ISD::VBROADCAST 0x55bc0f225ae0
try.c: 0x55bc0f225ae0: i32,ch = load<LD4[ConstantPool]> 0x55bc0f11ea30, 0x55bc0f1bca30, undef:i64
try.c: 0x55bc0f1bca30: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55bc0f1d15f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55bc0f1d0c70: i64 = undef
try.c: 0x55bc0f248ce0: 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: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: i32 = Constant<0>
try.c: 0x55bc0f248bb0: 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 ref

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x5628673fcc50: v4i64 = X86ISD::VTRUNC 0x5628673fcb20
try.c: 0x5628673fcb20: v16i32 = vselect 0x562867401210, 0x5628673b1380, 0x5628673fc9f0
try.c: 0x562867401210: v4i1 = X86ISD::PCMPGTM 0x5628673f5ad0, 0x5628673f1660
try.c: 0x5628673f5ad0: v4i64 = X86ISD::VBROADCAST 0x5628673968e0
try.c: 0x5628673968e0: i64,ch = load<LD8[%lsr.iv6971]> 0x562867306960, 0x5628673ec4c0, undef:i64
try.c: 0x5628673ec4c0: i64,ch = CopyFromReg 0x562867306960, Register:i64 %vreg50
try.c: 0x5628673f18c0: i64 = Register %vreg50
try.c: 0x5628673af9f0: i64 = undef
try.c: 0x5628673f1660: v4i64,ch = CopyFromReg 0x562867306960, Register:v4i64 %vreg13
try.c: 0x5628673f6320: v4i64 = Register %vreg13
try.c: 0x5628673b1380: v16i32 = X86ISD::VBROADCAST 0x5628673f5d30
try.c: 0x5628673f5d30: i32,ch = load<LD4[ConstantPool]> 0x562867306960, 0x562867395ec0, undef:i64
try.c: 0x562867395ec0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5628673bb8a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5628673af9f0: i64 = undef
try.c: 0x5628673fc9f0: 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: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: i32 = Constant<0>
try.c: 0x5628673fc8c0: 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 ref