Implementation notes: amd64, cel02, crypto_aead/hs1sivhiv2

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: hs1sivhiv2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
122309673 0 030852 832 896T:fastergcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1406032127 0 056333 840 960T:dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1408029861 0 050844 832 896T:dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1417629419 0 049916 832 896T:dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1425234618 0 058973 840 960T:dolbeau/amd64-avx512gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1481213323 0 032464 816 896T:dolbeau/amd64-avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1515232520 0 053628 832 896T:dolbeau/amd64-avx512gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1531631493 0 052124 832 896T:dolbeau/amd64-avx512gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1710413881 0 038285 840 960T:fastergcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1714015184 0 034336 816 896T:dolbeau/amd64-avx512gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
182088662 0 027364 808 856T:fasterclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
186529166 0 028248 816 896T:fastergcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
215669439 0 030132 832 896T:fastergcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2757429450 0 049948 832 896T:dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2803613609 0 032132 808 856T:dolbeau/amd64-sseclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2854830199 0 054437 840 960T:dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3005611207 0 030264 816 896T:dolbeau/amd64-ssegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3303029807 0 050788 832 896T:dolbeau/amd64-ssegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
578784274 0 023352 816 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
716126979 0 027418 816 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
777964536 0 023188 808 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
858205499 0 026636 832 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
879406531 0 030965 840 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1145585734 0 026469 840 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Test failure

Implementation: T:faster
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111

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

Compiler output

Implementation: T:dolbeau/amd64-avx2
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:235:
encrypt.c: ./u16.h:179:28: warning: implicit declaration of function '_mm512_set_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: const __m512i addv12 = _mm512_set_epi32(15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0);
encrypt.c: ^
encrypt.c: ./u16.h:179:19: error: initializing 'const __m512i' (vector of 8 'long long' values) with an expression of incompatible type 'int'
encrypt.c: const __m512i addv12 = _mm512_set_epi32(15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./u16.h:181:12: warning: implicit declaration of function '_mm512_broadcastd_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: t_12 = _mm512_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^
encrypt.c: ./u16.h:181:10: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
encrypt.c: t_12 = _mm512_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./u16.h:187:7: warning: implicit declaration of function '_mm512_rol_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: VEC16_ROUND( 0, 4, 8,12, 1, 5, 9,13, 2, 6,10,14, 3, 7,11,15);
encrypt.c: ^
encrypt.c: ./u16.h:105:70: note: expanded from macro 'VEC16_ROUND'
encrypt.c: #define VEC16_ROUND(a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4) VEC16_ROUND_SEQ(a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4)
encrypt.c: ^
encrypt.c: ./u16.h:81:3: note: expanded from macro 'VEC16_ROUND_SEQ'
encrypt.c: VEC16_LINE1(a1,b1,c1,d1); \
encrypt.c: ^
encrypt.c: ./u16.h:11:51: note: expanded from macro 'VEC16_LINE1'
encrypt.c: x_##a = _mm512_add_epi32(x_##a, x_##b); x_##d = VEC16_ROT(_mm512_xor_si512(x_##d, x_##a), 16)
encrypt.c: ^
encrypt.c: ...

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

Compiler output

Implementation: T:dolbeau/amd64-avx2
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: encrypt.c:90:2: error: "This code requires AVX2 to work"
encrypt.c: #error "This code requires AVX2 to work"
encrypt.c: ^
encrypt.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:dolbeau/amd64-avx2

Compiler output

Implementation: T:dolbeau/amd64-avx512
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:195:
encrypt.c: ./c368.h:177:28: warning: implicit declaration of function '_mm512_set_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: const __m512i addv12 = _mm512_set_epi32(15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0);
encrypt.c: ^
encrypt.c: ./c368.h:177:19: error: initializing 'const __m512i' (vector of 8 'long long' values) with an expression of incompatible type 'int'
encrypt.c: const __m512i addv12 = _mm512_set_epi32(15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c368.h:179:12: warning: implicit declaration of function '_mm512_broadcastd_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: t_12 = _mm512_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^
encrypt.c: ./c368.h:179:10: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
encrypt.c: t_12 = _mm512_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c368.h:185:7: warning: implicit declaration of function '_mm512_rol_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: VEC16_ROUND( 0, 4, 8,12, 1, 5, 9,13, 2, 6,10,14, 3, 7,11,15);
encrypt.c: ^
encrypt.c: ./c368.h:106:70: note: expanded from macro 'VEC16_ROUND'
encrypt.c: #define VEC16_ROUND(a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4) VEC16_ROUND_SEQ(a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4)
encrypt.c: ^
encrypt.c: ./c368.h:82:3: note: expanded from macro 'VEC16_ROUND_SEQ'
encrypt.c: VEC16_LINE1(a1,b1,c1,d1); \
encrypt.c: ^
encrypt.c: ./c368.h:12:51: note: expanded from macro 'VEC16_LINE1'
encrypt.c: x_##a = _mm512_add_epi32(x_##a, x_##b); x_##d = VEC16_ROT(_mm512_xor_si512(x_##d, x_##a), 16)
encrypt.c: ^
encrypt.c: ...

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

Compiler output

Implementation: T:dolbeau/amd64-avx512
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: encrypt.c:90:2: error: "This code requires AVX512F to work"
encrypt.c: #error "This code requires AVX512F to work"
encrypt.c: ^
encrypt.c: In file included from encrypt.c:195:
encrypt.c: ./c368.h:177:28: warning: implicit declaration of function '_mm512_set_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: const __m512i addv12 = _mm512_set_epi32(15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0);
encrypt.c: ^
encrypt.c: ./c368.h:177:19: error: initializing 'const __m512i' (vector of 8 'long long' values) with an expression of incompatible type 'int'
encrypt.c: const __m512i addv12 = _mm512_set_epi32(15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0);
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c368.h:179:12: warning: implicit declaration of function '_mm512_broadcastd_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: t_12 = _mm512_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^
encrypt.c: ./c368.h:179:10: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
encrypt.c: t_12 = _mm512_broadcastd_epi32(_mm_cvtsi32_si128(in12));
encrypt.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encrypt.c: ./c368.h:185:7: warning: implicit declaration of function '_mm512_rol_epi32' is invalid in C99 [-Wimplicit-function-declaration]
encrypt.c: VEC16_ROUND( 0, 4, 8,12, 1, 5, 9,13, 2, 6,10,14, 3, 7,11,15);
encrypt.c: ^
encrypt.c: ./c368.h:106:70: note: expanded from macro 'VEC16_ROUND'
encrypt.c: #define VEC16_ROUND(a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4) VEC16_ROUND_SEQ(a1,b1,c1,d1,a2,b2,c2,d2,a3,b3,c3,d3,a4,b4,c4,d4)
encrypt.c: ^
encrypt.c: ./c368.h:82:3: note: expanded from macro 'VEC16_ROUND_SEQ'
encrypt.c: VEC16_LINE1(a1,b1,c1,d1); \
encrypt.c: ^
encrypt.c: ...

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

Compiler output

Implementation: T:dolbeau/amd64-sse
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: 0x555a90ad51f0: v4i64 = X86ISD::VTRUNC 0x555a90ad50c0
try.c: 0x555a90ad50c0: v16i32 = vselect 0x555a90ab5cc0, 0x555a90a660f0, 0x555a90ad4f90
try.c: 0x555a90ab5cc0: v4i1 = X86ISD::PCMPGTM 0x555a90abd890, 0x555a90ab9420
try.c: 0x555a90abd890: v4i64 = X86ISD::VBROADCAST 0x555a90a61f90
try.c: 0x555a90a61f90: i64,ch = load<LD8[%lsr.iv6971]> 0x555a909ce960, 0x555a90ab0750, undef:i64
try.c: 0x555a90ab0750: i64,ch = CopyFromReg 0x555a909ce960, Register:i64 %vreg50
try.c: 0x555a90ab9680: i64 = Register %vreg50
try.c: 0x555a90a64760: i64 = undef
try.c: 0x555a90ab9420: v4i64,ch = CopyFromReg 0x555a909ce960, Register:v4i64 %vreg13
try.c: 0x555a90abe0e0: v4i64 = Register %vreg13
try.c: 0x555a90a660f0: v16i32 = X86ISD::VBROADCAST 0x555a90abdaf0
try.c: 0x555a90abdaf0: i32,ch = load<LD4[ConstantPool]> 0x555a909ce960, 0x555a90a61570, undef:i64
try.c: 0x555a90a61570: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555a90aa3440: i64 = TargetConstantPool<i32 1> 0
try.c: 0x555a90a64760: i64 = undef
try.c: 0x555a90ad4f90: 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: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: i32 = Constant<0>
try.c: 0x555a90ad4e60: 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:dolbeau/amd64-sse

Compiler output

Implementation: T:dolbeau/amd64-sse
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: 0x5560c0cab3c0: v4i64 = X86ISD::VTRUNC 0x5560c0cab290
try.c: 0x5560c0cab290: v16i32 = vselect 0x5560c0c8ca40, 0x5560c0c31bf0, 0x5560c0cab160
try.c: 0x5560c0c8ca40: v4i1 = X86ISD::PCMPGTM 0x5560c0c85de0, 0x5560c0c81970
try.c: 0x5560c0c85de0: v4i64 = X86ISD::VBROADCAST 0x5560c0c320b0
try.c: 0x5560c0c320b0: i64,ch = load<LD8[%lsr.iv6971]> 0x5560c0b7fa40, 0x5560c0c21c40, undef:i64
try.c: 0x5560c0c21c40: i64,ch = CopyFromReg 0x5560c0b7fa40, Register:i64 %vreg50
try.c: 0x5560c0c81bd0: i64 = Register %vreg50
try.c: 0x5560c0c1d150: i64 = undef
try.c: 0x5560c0c81970: v4i64,ch = CopyFromReg 0x5560c0b7fa40, Register:v4i64 %vreg13
try.c: 0x5560c0c86630: v4i64 = Register %vreg13
try.c: 0x5560c0c31bf0: v16i32 = X86ISD::VBROADCAST 0x5560c0c86040
try.c: 0x5560c0c86040: i32,ch = load<LD4[ConstantPool]> 0x5560c0b7fa40, 0x5560c0c34590, undef:i64
try.c: 0x5560c0c34590: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5560c0c1dad0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5560c0c1d150: i64 = undef
try.c: 0x5560c0cab160: 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: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: i32 = Constant<0>
try.c: 0x5560c0cab030: 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:dolbeau/amd64-sse

Compiler output

Implementation: T:dolbeau/amd64-sse
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: 0x5634ba1f7f50: v4i64 = X86ISD::VTRUNC 0x5634ba1f7e20
try.c: 0x5634ba1f7e20: v16i32 = vselect 0x5634ba2107e0, 0x5634ba1acab0, 0x5634ba1f7cf0
try.c: 0x5634ba2107e0: v4i1 = X86ISD::PCMPGTM 0x5634ba1f2920, 0x5634ba1ee4b0
try.c: 0x5634ba1f2920: v4i64 = X86ISD::VBROADCAST 0x5634ba191e40
try.c: 0x5634ba191e40: i64,ch = load<LD8[%lsr.iv6971]> 0x5634ba103950, 0x5634ba1e9310, undef:i64
try.c: 0x5634ba1e9310: i64,ch = CopyFromReg 0x5634ba103950, Register:i64 %vreg50
try.c: 0x5634ba1ee710: i64 = Register %vreg50
try.c: 0x5634ba1ab120: i64 = undef
try.c: 0x5634ba1ee4b0: v4i64,ch = CopyFromReg 0x5634ba103950, Register:v4i64 %vreg13
try.c: 0x5634ba1f3170: v4i64 = Register %vreg13
try.c: 0x5634ba1acab0: v16i32 = X86ISD::VBROADCAST 0x5634ba1f2b80
try.c: 0x5634ba1f2b80: i32,ch = load<LD4[ConstantPool]> 0x5634ba103950, 0x5634ba191420, undef:i64
try.c: 0x5634ba191420: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5634ba1d7790: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5634ba1ab120: i64 = undef
try.c: 0x5634ba1f7cf0: 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: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: i32 = Constant<0>
try.c: 0x5634ba1f7bc0: 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:dolbeau/amd64-sse

Compiler output

Implementation: T:dolbeau/amd64-sse
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:192:
encrypt.c: ./c256.h:98:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 0, 4, 8,12);
encrypt.c: ^
encrypt.c: ./c256.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c256.h:12:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ^
encrypt.c: ./c256.h:98:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: ./c256.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c256.h:14:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot8); \
encrypt.c: ^
encrypt.c: ./c256.h:99:7: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'chacha_noxor368' that is compiled without support for 'ssse3'
encrypt.c: VEC4_QUARTERROUND( 1, 5, 9,13);
encrypt.c: ^
encrypt.c: ./c256.h:17:36: note: expanded from macro 'VEC4_QUARTERROUND'
encrypt.c: #define VEC4_QUARTERROUND(a,b,c,d) VEC4_QUARTERROUND_SHUFFLE(a,b,c,d)
encrypt.c: ^
encrypt.c: ./c256.h:12:86: note: expanded from macro 'VEC4_QUARTERROUND_SHUFFLE'
encrypt.c: x_##a = _mm_add_epi32(x_##a, x_##b); t_##a = _mm_xor_si128(x_##d, x_##a); x_##d = _mm_shuffle_epi8(t_##a, rot16); \
encrypt.c: ...

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

Compiler output

Implementation: T:faster
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: 0x55d75dda8e50: v4i64 = X86ISD::VTRUNC 0x55d75dda8d20
try.c: 0x55d75dda8d20: v16i32 = vselect 0x55d75dda3820, 0x55d75dd4f470, 0x55d75dda8bf0
try.c: 0x55d75dda3820: v4i1 = X86ISD::PCMPGTM 0x55d75dda2810, 0x55d75dd9e3a0
try.c: 0x55d75dda2810: v4i64 = X86ISD::VBROADCAST 0x55d75dd5e590
try.c: 0x55d75dd5e590: i64,ch = load<LD8[%lsr.iv6971]> 0x55d75dcb3950, 0x55d75dd8c670, undef:i64
try.c: 0x55d75dd8c670: i64,ch = CopyFromReg 0x55d75dcb3950, Register:i64 %vreg50
try.c: 0x55d75dd9e600: i64 = Register %vreg50
try.c: 0x55d75dd4dae0: i64 = undef
try.c: 0x55d75dd9e3a0: v4i64,ch = CopyFromReg 0x55d75dcb3950, Register:v4i64 %vreg13
try.c: 0x55d75dda3060: v4i64 = Register %vreg13
try.c: 0x55d75dd4f470: v16i32 = X86ISD::VBROADCAST 0x55d75dda2a70
try.c: 0x55d75dda2a70: i32,ch = load<LD4[ConstantPool]> 0x55d75dcb3950, 0x55d75dd5db70, undef:i64
try.c: 0x55d75dd5db70: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d75dd47dc0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d75dd4dae0: i64 = undef
try.c: 0x55d75dda8bf0: 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: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: i32 = Constant<0>
try.c: 0x55d75dda8ac0: 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:faster

Compiler output

Implementation: T:faster
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: 0x55cb701799f0: v4i64 = X86ISD::VTRUNC 0x55cb701798c0
try.c: 0x55cb701798c0: v16i32 = vselect 0x55cb701743c0, 0x55cb7010cd50, 0x55cb70179790
try.c: 0x55cb701743c0: v4i1 = X86ISD::PCMPGTM 0x55cb701713a0, 0x55cb7016cf30
try.c: 0x55cb701713a0: v4i64 = X86ISD::VBROADCAST 0x55cb7010d210
try.c: 0x55cb7010d210: i64,ch = load<LD8[%lsr.iv6971]> 0x55cb7006aa20, 0x55cb70112d80, undef:i64
try.c: 0x55cb70112d80: i64,ch = CopyFromReg 0x55cb7006aa20, Register:i64 %vreg50
try.c: 0x55cb7016d190: i64 = Register %vreg50
try.c: 0x55cb70132ce0: i64 = undef
try.c: 0x55cb7016cf30: v4i64,ch = CopyFromReg 0x55cb7006aa20, Register:v4i64 %vreg13
try.c: 0x55cb70171bf0: v4i64 = Register %vreg13
try.c: 0x55cb7010cd50: v16i32 = X86ISD::VBROADCAST 0x55cb70171600
try.c: 0x55cb70171600: i32,ch = load<LD4[ConstantPool]> 0x55cb7006aa20, 0x55cb70111350, undef:i64
try.c: 0x55cb70111350: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55cb70133660: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55cb70132ce0: i64 = undef
try.c: 0x55cb70179790: 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: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: i32 = Constant<0>
try.c: 0x55cb70179660: 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:faster

Compiler output

Implementation: T:faster
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: 0x564d56098750: v4i64 = X86ISD::VTRUNC 0x564d56098620
try.c: 0x564d56098620: v16i32 = vselect 0x564d560ac970, 0x564d5604e660, 0x564d560984f0
try.c: 0x564d560ac970: v4i1 = X86ISD::PCMPGTM 0x564d56092de0, 0x564d5608e360
try.c: 0x564d56092de0: v4i64 = X86ISD::VBROADCAST 0x564d56036650
try.c: 0x564d56036650: i64,ch = load<LD8[%lsr.iv6971]> 0x564d55fa3950, 0x564d5607c970, undef:i64
try.c: 0x564d5607c970: i64,ch = CopyFromReg 0x564d55fa3950, Register:i64 %vreg50
try.c: 0x564d5608e5c0: i64 = Register %vreg50
try.c: 0x564d56037b20: i64 = undef
try.c: 0x564d5608e360: v4i64,ch = CopyFromReg 0x564d55fa3950, Register:v4i64 %vreg13
try.c: 0x564d56093630: v4i64 = Register %vreg13
try.c: 0x564d5604e660: v16i32 = X86ISD::VBROADCAST 0x564d56093040
try.c: 0x564d56093040: i32,ch = load<LD4[ConstantPool]> 0x564d55fa3950, 0x564d5604bae0, undef:i64
try.c: 0x564d5604bae0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x564d5607db70: i64 = TargetConstantPool<i32 1> 0
try.c: 0x564d56037b20: i64 = undef
try.c: 0x564d560984f0: 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: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: i32 = Constant<0>
try.c: 0x564d560983c0: 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:faster

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: 0x56046806f930: v4i64 = X86ISD::VTRUNC 0x56046806f800
try.c: 0x56046806f800: v16i32 = vselect 0x56046806c310, 0x560468007970, 0x56046806f6d0
try.c: 0x56046806c310: v4i1 = X86ISD::PCMPGTM 0x5604680676c0, 0x560468063250
try.c: 0x5604680676c0: v4i64 = X86ISD::VBROADCAST 0x560468021770
try.c: 0x560468021770: i64,ch = load<LD8[%lsr.iv6971]> 0x560467f78940, 0x56046805a4a0, undef:i64
try.c: 0x56046805a4a0: i64,ch = CopyFromReg 0x560467f78940, Register:i64 %vreg50
try.c: 0x5604680634b0: i64 = Register %vreg50
try.c: 0x560468022c40: i64 = undef
try.c: 0x560468063250: v4i64,ch = CopyFromReg 0x560467f78940, Register:v4i64 %vreg13
try.c: 0x560468067f10: v4i64 = Register %vreg13
try.c: 0x560468007970: v16i32 = X86ISD::VBROADCAST 0x560468067920
try.c: 0x560468067920: i32,ch = load<LD4[ConstantPool]> 0x560467f78940, 0x56046800bd80, undef:i64
try.c: 0x56046800bd80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x560468051650: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560468022c40: i64 = undef
try.c: 0x56046806f6d0: 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: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: i32 = Constant<0>
try.c: 0x56046806f5a0: 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: 0x563a563ed560: v4i64 = X86ISD::VTRUNC 0x563a563ed430
try.c: 0x563a563ed430: v16i32 = vselect 0x563a563e7f30, 0x563a563944c0, 0x563a563ed300
try.c: 0x563a563e7f30: v4i1 = X86ISD::PCMPGTM 0x563a563d3760, 0x563a563ceb30
try.c: 0x563a563d3760: v4i64 = X86ISD::VBROADCAST 0x563a56394980
try.c: 0x563a56394980: i64,ch = load<LD8[%lsr.iv6971]> 0x563a562cca30, 0x563a563678b0, undef:i64
try.c: 0x563a563678b0: i64,ch = CopyFromReg 0x563a562cca30, Register:i64 %vreg50
try.c: 0x563a563ced90: i64 = Register %vreg50
try.c: 0x563a5636b3d0: i64 = undef
try.c: 0x563a563ceb30: v4i64,ch = CopyFromReg 0x563a562cca30, Register:v4i64 %vreg13
try.c: 0x563a563d3fb0: v4i64 = Register %vreg13
try.c: 0x563a563944c0: v16i32 = X86ISD::VBROADCAST 0x563a563d39c0
try.c: 0x563a563d39c0: i32,ch = load<LD4[ConstantPool]> 0x563a562cca30, 0x563a56365e80, undef:i64
try.c: 0x563a56365e80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x563a5636bd50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x563a5636b3d0: i64 = undef
try.c: 0x563a563ed300: 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: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: i32 = Constant<0>
try.c: 0x563a563ed1d0: 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: 0x55ccf1dfa5d0: v4i64 = X86ISD::VTRUNC 0x55ccf1dfa4a0
try.c: 0x55ccf1dfa4a0: v16i32 = vselect 0x55ccf1dfdc10, 0x55ccf1d8cd50, 0x55ccf1dfa370
try.c: 0x55ccf1dfdc10: v4i1 = X86ISD::PCMPGTM 0x55ccf1ddedc0, 0x55ccf1dda340
try.c: 0x55ccf1ddedc0: v4i64 = X86ISD::VBROADCAST 0x55ccf1d822a0
try.c: 0x55ccf1d822a0: i64,ch = load<LD8[%lsr.iv6971]> 0x55ccf1cef930, 0x55ccf1dc8990, undef:i64
try.c: 0x55ccf1dc8990: i64,ch = CopyFromReg 0x55ccf1cef930, Register:i64 %vreg50
try.c: 0x55ccf1dda5a0: i64 = Register %vreg50
try.c: 0x55ccf1d83770: i64 = undef
try.c: 0x55ccf1dda340: v4i64,ch = CopyFromReg 0x55ccf1cef930, Register:v4i64 %vreg13
try.c: 0x55ccf1ddf610: v4i64 = Register %vreg13
try.c: 0x55ccf1d8cd50: v16i32 = X86ISD::VBROADCAST 0x55ccf1ddf020
try.c: 0x55ccf1ddf020: i32,ch = load<LD4[ConstantPool]> 0x55ccf1cef930, 0x55ccf1d9abf0, undef:i64
try.c: 0x55ccf1d9abf0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55ccf1dc4140: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55ccf1d83770: i64 = undef
try.c: 0x55ccf1dfa370: 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: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: i32 = Constant<0>
try.c: 0x55ccf1dfa240: 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