Implementation notes: amd64, cel02, crypto_aead/pi64cipher256v2

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: pi64cipher256v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5030831992 8 050165 832 960T:goptvgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5175820057 8 034700 824 896T:goptvgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5537421725 8 036644 824 896T:goptvgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8731423031 8 041165 832 960T:ref2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
968948172 8 021752 808 896T:goptvgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1040248183 8 023282 808 856T:ref3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1215366713 8 021604 824 896T:ref3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
21372812378 8 030501 832 960T:ref3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
22471417341 8 032258 808 856T:ref2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2455226147 8 019428 800 856T:ref3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2507245377 8 020004 824 896T:ref3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3011964458 8 017856 808 896T:ref3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3868766553 8 021484 824 896T:ref2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4102724993 8 018416 808 896T:ref2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6699326372 8 019676 800 856T:ref2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
6913546155 8 020804 824 896T:ref2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Test failure

Implementation: T:optimized_nonSSE
Security model: timingleaks
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_aead_encrypt returns more than crypto_aead_ABYTES extra bytes

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:optimized_nonSSE
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:optimized_nonSSE
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Compiler output

Implementation: T:goptv
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
pi-cipher.c: pi-cipher.c:273:15: error: cannot convert between vector values of different size ('qword_t' (vector of 4 'word_t' values) and 'uint8_t' (aka 'unsigned char'))
pi-cipher.c: return (x << n) | (x >> ((PI_WORD_SIZE) - n));
pi-cipher.c: ~ ^ ~
pi-cipher.c: pi-cipher.c:273:26: error: cannot convert between vector values of different size ('qword_t' (vector of 4 'word_t' values) and 'int')
pi-cipher.c: return (x << n) | (x >> ((PI_WORD_SIZE) - n));
pi-cipher.c: ~ ^ ~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c:286:9: error: use of unknown builtin '__builtin_shuffle' [-Wimplicit-function-declaration]
pi-cipher.c: n_t += __builtin_shuffle(y, g_mask);
pi-cipher.c: ^
pi-cipher.c: pi-cipher.c:286:6: error: cannot convert between vector values of different size ('vchunk_t' (vector of 4 'word_t' values) and 'int')
pi-cipher.c: n_t += __builtin_shuffle(y, g_mask);
pi-cipher.c: ~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c:287:6: error: cannot convert between vector values of different size ('vchunk_t' (vector of 4 'word_t' values) and 'int')
pi-cipher.c: n_t += __builtin_shuffle(y, n_mask);
pi-cipher.c: ~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c:289:8: error: cannot convert between vector values of different size ('unsigned long' and 'vchunk_t' (vector of 4 'word_t' values))
pi-cipher.c: n_t = ROTL(n_t, n_rot);
pi-cipher.c: ^~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c:267:64: note: expanded from macro 'ROTL'
pi-cipher.c: #define ROTL(x, n) (((x) << (n)) | ((x) >> (sizeof(word_t) * 8 - (n))))
pi-cipher.c: ~~~~~~~~~~~~~~~~~~ ^ ~~~
pi-cipher.c: pi-cipher.c:290:6: error: cannot convert between vector values of different size ('vchunk_t' (vector of 4 'word_t' values) and 'int')
pi-cipher.c: n_t ^= __builtin_shuffle(n_t, n_x_1) ^ __builtin_shuffle(n_t, n_x_2);
pi-cipher.c: ~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pi-cipher.c: pi-cipher.c:305:6: error: cannot convert between vector values of different size ('vchunk_t' (vector of 4 'word_t' values) and 'int')
pi-cipher.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv

Compiler output

Implementation: T:optimized_nonSSE
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: 0x55e1b8f3d260: v4i64 = X86ISD::VTRUNC 0x55e1b8f3d130
try.c: 0x55e1b8f3d130: v16i32 = vselect 0x55e1b8f4db80, 0x55e1b8eec3a0, 0x55e1b8f3d000
try.c: 0x55e1b8f4db80: v4i1 = X86ISD::PCMPGTM 0x55e1b8f36810, 0x55e1b8f323a0
try.c: 0x55e1b8f36810: v4i64 = X86ISD::VBROADCAST 0x55e1b8ed7010
try.c: 0x55e1b8ed7010: i64,ch = load<LD8[%lsr.iv6971]> 0x55e1b8e47960, 0x55e1b8f21b20, undef:i64
try.c: 0x55e1b8f21b20: i64,ch = CopyFromReg 0x55e1b8e47960, Register:i64 %vreg50
try.c: 0x55e1b8f32600: i64 = Register %vreg50
try.c: 0x55e1b8ed84e0: i64 = undef
try.c: 0x55e1b8f323a0: v4i64,ch = CopyFromReg 0x55e1b8e47960, Register:v4i64 %vreg13
try.c: 0x55e1b8f37060: v4i64 = Register %vreg13
try.c: 0x55e1b8eec3a0: v16i32 = X86ISD::VBROADCAST 0x55e1b8f36a70
try.c: 0x55e1b8f36a70: i32,ch = load<LD4[ConstantPool]> 0x55e1b8e47960, 0x55e1b8edbf70, undef:i64
try.c: 0x55e1b8edbf70: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55e1b8eb92f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55e1b8ed84e0: i64 = undef
try.c: 0x55e1b8f3d000: 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: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: i32 = Constant<0>
try.c: 0x55e1b8f3ced0: 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:optimized_nonSSE

Compiler output

Implementation: T:optimized_nonSSE
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: 0x55a5f3082550: v4i64 = X86ISD::VTRUNC 0x55a5f3082420
try.c: 0x55a5f3082420: v16i32 = vselect 0x55a5f307cf20, 0x55a5f3003ec0, 0x55a5f30822f0
try.c: 0x55a5f307cf20: v4i1 = X86ISD::PCMPGTM 0x55a5f3068750, 0x55a5f30642e0
try.c: 0x55a5f3068750: v4i64 = X86ISD::VBROADCAST 0x55a5f3004380
try.c: 0x55a5f3004380: i64,ch = load<LD8[%lsr.iv6971]> 0x55a5f2f61a40, 0x55a5f30291a0, undef:i64
try.c: 0x55a5f30291a0: i64,ch = CopyFromReg 0x55a5f2f61a40, Register:i64 %vreg50
try.c: 0x55a5f3064540: i64 = Register %vreg50
try.c: 0x55a5f2ffbec0: i64 = undef
try.c: 0x55a5f30642e0: v4i64,ch = CopyFromReg 0x55a5f2f61a40, Register:v4i64 %vreg13
try.c: 0x55a5f3068fa0: v4i64 = Register %vreg13
try.c: 0x55a5f3003ec0: v16i32 = X86ISD::VBROADCAST 0x55a5f30689b0
try.c: 0x55a5f30689b0: i32,ch = load<LD4[ConstantPool]> 0x55a5f2f61a40, 0x55a5f3027770, undef:i64
try.c: 0x55a5f3027770: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a5f2ffc840: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a5f2ffbec0: i64 = undef
try.c: 0x55a5f30822f0: 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: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: i32 = Constant<0>
try.c: 0x55a5f30821c0: 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:optimized_nonSSE

Compiler output

Implementation: T:optimized_nonSSE
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: 0x562c8fdbd880: v4i64 = X86ISD::VTRUNC 0x562c8fdbd750
try.c: 0x562c8fdbd750: v16i32 = vselect 0x562c8fdba260, 0x562c8fd6be70, 0x562c8fdbd620
try.c: 0x562c8fdba260: v4i1 = X86ISD::PCMPGTM 0x562c8fdb5750, 0x562c8fdb12e0
try.c: 0x562c8fdb5750: v4i64 = X86ISD::VBROADCAST 0x562c8fd59310
try.c: 0x562c8fd59310: i64,ch = load<LD8[%lsr.iv6971]> 0x562c8fcc6960, 0x562c8fdac140, undef:i64
try.c: 0x562c8fdac140: i64,ch = CopyFromReg 0x562c8fcc6960, Register:i64 %vreg50
try.c: 0x562c8fdb1540: i64 = Register %vreg50
try.c: 0x562c8fd6a4e0: i64 = undef
try.c: 0x562c8fdb12e0: v4i64,ch = CopyFromReg 0x562c8fcc6960, Register:v4i64 %vreg13
try.c: 0x562c8fdb5fa0: v4i64 = Register %vreg13
try.c: 0x562c8fd6be70: v16i32 = X86ISD::VBROADCAST 0x562c8fdb59b0
try.c: 0x562c8fdb59b0: i32,ch = load<LD4[ConstantPool]> 0x562c8fcc6960, 0x562c8fd588f0, undef:i64
try.c: 0x562c8fd588f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x562c8fd531b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x562c8fd6a4e0: i64 = undef
try.c: 0x562c8fdbd620: 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: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: i32 = Constant<0>
try.c: 0x562c8fdbd4f0: 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:optimized_nonSSE

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: 0x5626ceb92060: v4i64 = X86ISD::VTRUNC 0x5626ceb91f30
try.c: 0x5626ceb91f30: v16i32 = vselect 0x5626ceb80d60, 0x5626ceb30d00, 0x5626ceb91e00
try.c: 0x5626ceb80d60: v4i1 = X86ISD::PCMPGTM 0x5626ceb88f40, 0x5626ceb844c0
try.c: 0x5626ceb88f40: v4i64 = X86ISD::VBROADCAST 0x5626ceb29ad0
try.c: 0x5626ceb29ad0: i64,ch = load<LD8[%lsr.iv6971]> 0x5626cea99950, 0x5626ceb77820, undef:i64
try.c: 0x5626ceb77820: i64,ch = CopyFromReg 0x5626cea99950, Register:i64 %vreg50
try.c: 0x5626ceb84720: i64 = Register %vreg50
try.c: 0x5626ceb2f370: i64 = undef
try.c: 0x5626ceb844c0: v4i64,ch = CopyFromReg 0x5626cea99950, Register:v4i64 %vreg13
try.c: 0x5626ceb89790: v4i64 = Register %vreg13
try.c: 0x5626ceb30d00: v16i32 = X86ISD::VBROADCAST 0x5626ceb891a0
try.c: 0x5626ceb891a0: i32,ch = load<LD4[ConstantPool]> 0x5626cea99950, 0x5626ceb290b0, undef:i64
try.c: 0x5626ceb290b0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5626ceb794b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5626ceb2f370: i64 = undef
try.c: 0x5626ceb91e00: 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: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: i32 = Constant<0>
try.c: 0x5626ceb91cd0: 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: 0x55f1d7578dd0: v4i64 = X86ISD::VTRUNC 0x55f1d7578ca0
try.c: 0x55f1d7578ca0: v16i32 = vselect 0x55f1d756b750, 0x55f1d75028a0, 0x55f1d7578b70
try.c: 0x55f1d756b750: v4i1 = X86ISD::PCMPGTM 0x55f1d7553d70, 0x55f1d7550300
try.c: 0x55f1d7553d70: v4i64 = X86ISD::VBROADCAST 0x55f1d7502d60
try.c: 0x55f1d7502d60: i64,ch = load<LD8[%lsr.iv6971]> 0x55f1d744ea30, 0x55f1d74e9450, undef:i64
try.c: 0x55f1d74e9450: i64,ch = CopyFromReg 0x55f1d744ea30, Register:i64 %vreg50
try.c: 0x55f1d7550560: i64 = Register %vreg50
try.c: 0x55f1d74ef190: i64 = undef
try.c: 0x55f1d7550300: v4i64,ch = CopyFromReg 0x55f1d744ea30, Register:v4i64 %vreg13
try.c: 0x55f1d75545c0: v4i64 = Register %vreg13
try.c: 0x55f1d75028a0: v16i32 = X86ISD::VBROADCAST 0x55f1d7553fd0
try.c: 0x55f1d7553fd0: i32,ch = load<LD4[ConstantPool]> 0x55f1d744ea30, 0x55f1d7505240, undef:i64
try.c: 0x55f1d7505240: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55f1d74efb10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55f1d74ef190: i64 = undef
try.c: 0x55f1d7578b70: 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: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: i32 = Constant<0>
try.c: 0x55f1d7578a40: 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: 0x55bca72a3c90: v4i64 = X86ISD::VTRUNC 0x55bca72a3b60
try.c: 0x55bca72a3b60: v16i32 = vselect 0x55bca72b4010, 0x55bca723fef0, 0x55bca72a3a30
try.c: 0x55bca72b4010: v4i1 = X86ISD::PCMPGTM 0x55bca729cca0, 0x55bca7298220
try.c: 0x55bca729cca0: v4i64 = X86ISD::VBROADCAST 0x55bca72426d0
try.c: 0x55bca72426d0: i64,ch = load<LD8[%lsr.iv6971]> 0x55bca71ad930, 0x55bca7287890, undef:i64
try.c: 0x55bca7287890: i64,ch = CopyFromReg 0x55bca71ad930, Register:i64 %vreg50
try.c: 0x55bca7298480: i64 = Register %vreg50
try.c: 0x55bca7243ba0: i64 = undef
try.c: 0x55bca7298220: v4i64,ch = CopyFromReg 0x55bca71ad930, Register:v4i64 %vreg13
try.c: 0x55bca729d4f0: v4i64 = Register %vreg13
try.c: 0x55bca723fef0: v16i32 = X86ISD::VBROADCAST 0x55bca729cf00
try.c: 0x55bca729cf00: i32,ch = load<LD4[ConstantPool]> 0x55bca71ad930, 0x55bca722b7a0, undef:i64
try.c: 0x55bca722b7a0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55bca72384f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55bca7243ba0: i64 = undef
try.c: 0x55bca72a3a30: 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: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: i32 = Constant<0>
try.c: 0x55bca72a3900: 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

Compiler output

Implementation: T:ref2
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: 0x5650e53cb3d0: v4i64 = X86ISD::VTRUNC 0x5650e53cb2a0
try.c: 0x5650e53cb2a0: v16i32 = vselect 0x5650e53bae70, 0x5650e536e9e0, 0x5650e53cb170
try.c: 0x5650e53bae70: v4i1 = X86ISD::PCMPGTM 0x5650e53c2a40, 0x5650e53be5d0
try.c: 0x5650e53c2a40: v4i64 = X86ISD::VBROADCAST 0x5650e5369fa0
try.c: 0x5650e5369fa0: i64,ch = load<LD8[%lsr.iv6971]> 0x5650e52d3930, 0x5650e53ac890, undef:i64
try.c: 0x5650e53ac890: i64,ch = CopyFromReg 0x5650e52d3930, Register:i64 %vreg50
try.c: 0x5650e53be830: i64 = Register %vreg50
try.c: 0x5650e536b470: i64 = undef
try.c: 0x5650e53be5d0: v4i64,ch = CopyFromReg 0x5650e52d3930, Register:v4i64 %vreg13
try.c: 0x5650e53c3290: v4i64 = Register %vreg13
try.c: 0x5650e536e9e0: v16i32 = X86ISD::VBROADCAST 0x5650e53c2ca0
try.c: 0x5650e53c2ca0: i32,ch = load<LD4[ConstantPool]> 0x5650e52d3930, 0x5650e5369580, undef:i64
try.c: 0x5650e5369580: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5650e53ada90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5650e536b470: i64 = undef
try.c: 0x5650e53cb170: 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: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: i32 = Constant<0>
try.c: 0x5650e53cb040: 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:ref2

Compiler output

Implementation: T:ref2
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: 0x555a30d21b00: v4i64 = X86ISD::VTRUNC 0x555a30d219d0
try.c: 0x555a30d219d0: v16i32 = vselect 0x555a30d276c0, 0x555a30ca1080, 0x555a30d218a0
try.c: 0x555a30d276c0: v4i1 = X86ISD::PCMPGTM 0x555a30d08d10, 0x555a30d04290
try.c: 0x555a30d08d10: v4i64 = X86ISD::VBROADCAST 0x555a30ca1540
try.c: 0x555a30ca1540: i64,ch = load<LD8[%lsr.iv6971]> 0x555a30c02a40, 0x555a30ca6270, undef:i64
try.c: 0x555a30ca6270: i64,ch = CopyFromReg 0x555a30c02a40, Register:i64 %vreg50
try.c: 0x555a30d044f0: i64 = Register %vreg50
try.c: 0x555a30c80460: i64 = undef
try.c: 0x555a30d04290: v4i64,ch = CopyFromReg 0x555a30c02a40, Register:v4i64 %vreg13
try.c: 0x555a30d09560: v4i64 = Register %vreg13
try.c: 0x555a30ca1080: v16i32 = X86ISD::VBROADCAST 0x555a30d08f70
try.c: 0x555a30d08f70: i32,ch = load<LD4[ConstantPool]> 0x555a30c02a40, 0x555a30ca4030, undef:i64
try.c: 0x555a30ca4030: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555a30c80de0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x555a30c80460: i64 = undef
try.c: 0x555a30d218a0: 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: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: i32 = Constant<0>
try.c: 0x555a30d21770: 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:ref2

Compiler output

Implementation: T:ref2
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: 0x55a29c0c4680: v4i64 = X86ISD::VTRUNC 0x55a29c0c4550
try.c: 0x55a29c0c4550: v16i32 = vselect 0x55a29c0bf050, 0x55a29c07fa80, 0x55a29c0c4420
try.c: 0x55a29c0bf050: v4i1 = X86ISD::PCMPGTM 0x55a29c0be040, 0x55a29c0b9bd0
try.c: 0x55a29c0be040: v4i64 = X86ISD::VBROADCAST 0x55a29c077c20
try.c: 0x55a29c077c20: i64,ch = load<LD8[%lsr.iv6971]> 0x55a29bfce960, 0x55a29c0b02d0, undef:i64
try.c: 0x55a29c0b02d0: i64,ch = CopyFromReg 0x55a29bfce960, Register:i64 %vreg50
try.c: 0x55a29c0b9e30: i64 = Register %vreg50
try.c: 0x55a29c0790f0: i64 = undef
try.c: 0x55a29c0b9bd0: v4i64,ch = CopyFromReg 0x55a29bfce960, Register:v4i64 %vreg13
try.c: 0x55a29c0be890: v4i64 = Register %vreg13
try.c: 0x55a29c07fa80: v16i32 = X86ISD::VBROADCAST 0x55a29c0be2a0
try.c: 0x55a29c0be2a0: i32,ch = load<LD4[ConstantPool]> 0x55a29bfce960, 0x55a29c065930, undef:i64
try.c: 0x55a29c065930: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a29c0a4500: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a29c0790f0: i64 = undef
try.c: 0x55a29c0c4420: 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: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: i32 = Constant<0>
try.c: 0x55a29c0c42f0: 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:ref2

Compiler output

Implementation: T:ref3
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: 0x5572ebf7a010: v4i64 = X86ISD::VTRUNC 0x5572ebf79ee0
try.c: 0x5572ebf79ee0: v16i32 = vselect 0x5572ebf58ac0, 0x5572ebf06a00, 0x5572ebf79db0
try.c: 0x5572ebf58ac0: v4i1 = X86ISD::PCMPGTM 0x5572ebf626b0, 0x5572ebf5e240
try.c: 0x5572ebf626b0: v4i64 = X86ISD::VBROADCAST 0x5572ebf09200
try.c: 0x5572ebf09200: i64,ch = load<LD8[%lsr.iv6971]> 0x5572ebe73950, 0x5572ebf4b380, undef:i64
try.c: 0x5572ebf4b380: i64,ch = CopyFromReg 0x5572ebe73950, Register:i64 %vreg50
try.c: 0x5572ebf5e4a0: i64 = Register %vreg50
try.c: 0x5572ebf05070: i64 = undef
try.c: 0x5572ebf5e240: v4i64,ch = CopyFromReg 0x5572ebe73950, Register:v4i64 %vreg13
try.c: 0x5572ebf62f00: v4i64 = Register %vreg13
try.c: 0x5572ebf06a00: v16i32 = X86ISD::VBROADCAST 0x5572ebf62910
try.c: 0x5572ebf62910: i32,ch = load<LD4[ConstantPool]> 0x5572ebe73950, 0x5572ebf087e0, undef:i64
try.c: 0x5572ebf087e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5572ebf50890: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5572ebf05070: i64 = undef
try.c: 0x5572ebf79db0: 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: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: i32 = Constant<0>
try.c: 0x5572ebf79c80: 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:ref3

Compiler output

Implementation: T:ref3
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: 0x555936a02740: v4i64 = X86ISD::VTRUNC 0x555936a02610
try.c: 0x555936a02610: v16i32 = vselect 0x555936a07af0, 0x555936987610, 0x555936a024e0
try.c: 0x555936a07af0: v4i1 = X86ISD::PCMPGTM 0x5559369e9dd0, 0x5559369e78f0
try.c: 0x5559369e9dd0: v4i64 = X86ISD::VBROADCAST 0x555936987ad0
try.c: 0x555936987ad0: i64,ch = load<LD8[%lsr.iv6971]> 0x5559368e4a30, 0x55593697f220, undef:i64
try.c: 0x55593697f220: i64,ch = CopyFromReg 0x5559368e4a30, Register:i64 %vreg50
try.c: 0x5559369e7b50: i64 = Register %vreg50
try.c: 0x5559369635e0: i64 = undef
try.c: 0x5559369e78f0: v4i64,ch = CopyFromReg 0x5559368e4a30, Register:v4i64 %vreg13
try.c: 0x5559369ea620: v4i64 = Register %vreg13
try.c: 0x555936987610: v16i32 = X86ISD::VBROADCAST 0x5559369ea030
try.c: 0x5559369ea030: i32,ch = load<LD4[ConstantPool]> 0x5559368e4a30, 0x555936983550, undef:i64
try.c: 0x555936983550: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555936963f60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5559369635e0: i64 = undef
try.c: 0x555936a024e0: 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: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: i32 = Constant<0>
try.c: 0x555936a023b0: 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:ref3

Compiler output

Implementation: T:ref3
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: 0x55df14dafc90: v4i64 = X86ISD::VTRUNC 0x55df14dafb60
try.c: 0x55df14dafb60: v16i32 = vselect 0x55df14daaaa0, 0x55df14d47de0, 0x55df14dafa30
try.c: 0x55df14daaaa0: v4i1 = X86ISD::PCMPGTM 0x55df14da7a70, 0x55df14da3600
try.c: 0x55df14da7a70: v4i64 = X86ISD::VBROADCAST 0x55df14d55970
try.c: 0x55df14d55970: i64,ch = load<LD8[%lsr.iv6971]> 0x55df14cb8950, 0x55df14d8e450, undef:i64
try.c: 0x55df14d8e450: i64,ch = CopyFromReg 0x55df14cb8950, Register:i64 %vreg50
try.c: 0x55df14da3860: i64 = Register %vreg50
try.c: 0x55df14d56e40: i64 = undef
try.c: 0x55df14da3600: v4i64,ch = CopyFromReg 0x55df14cb8950, Register:v4i64 %vreg13
try.c: 0x55df14da82c0: v4i64 = Register %vreg13
try.c: 0x55df14d47de0: v16i32 = X86ISD::VBROADCAST 0x55df14da7cd0
try.c: 0x55df14da7cd0: i32,ch = load<LD4[ConstantPool]> 0x55df14cb8950, 0x55df14d4c1c0, undef:i64
try.c: 0x55df14d4c1c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55df14d8ce60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55df14d56e40: i64 = undef
try.c: 0x55df14dafa30: 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: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: i32 = Constant<0>
try.c: 0x55df14daf900: 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:ref3