Implementation notes: amd64, cel02, crypto_aead/pi32cipher256v2

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: pi32cipher256v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
8059024784 8 042941 832 960T:goptvgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8930217750 8 032644 824 896T:goptvgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9321216418 8 031044 824 896T:goptvgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1709707119 8 020632 808 896T:goptvgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2785626996 8 022082 808 856T:ref3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3076489473 8 024578 808 856T:ref2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
31121614569 8 032645 832 960T:ref2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3272269051 8 027149 832 960T:ref3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3465605074 8 018332 800 856T:ref3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3580725956 8 020828 824 896T:ref3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3634384937 8 019548 824 896T:ref3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3812844153 8 017544 808 896T:ref3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12187625865 8 020772 824 896T:ref2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12303385394 8 018700 800 856T:ref2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
12694965582 8 020204 824 896T:ref2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12863844677 8 018088 808 896T:ref2gcc_-march=native_-mtune=native_-Os_-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: 0x560498a0f5b0: v4i64 = X86ISD::VTRUNC 0x560498a0f480
try.c: 0x560498a0f480: v16i32 = vselect 0x560498a0a910, 0x5604989acab0, 0x560498a0f350
try.c: 0x560498a0a910: v4i1 = X86ISD::PCMPGTM 0x560498a078e0, 0x560498a03470
try.c: 0x560498a078e0: v4i64 = X86ISD::VBROADCAST 0x5604989ae9d0
try.c: 0x5604989ae9d0: i64,ch = load<LD8[%lsr.iv6971]> 0x560498918950, 0x5604989f2f30, undef:i64
try.c: 0x5604989f2f30: i64,ch = CopyFromReg 0x560498918950, Register:i64 %vreg50
try.c: 0x560498a036d0: i64 = Register %vreg50
try.c: 0x5604989ab120: i64 = undef
try.c: 0x560498a03470: v4i64,ch = CopyFromReg 0x560498918950, Register:v4i64 %vreg13
try.c: 0x560498a08130: v4i64 = Register %vreg13
try.c: 0x5604989acab0: v16i32 = X86ISD::VBROADCAST 0x560498a07b40
try.c: 0x560498a07b40: i32,ch = load<LD4[ConstantPool]> 0x560498918950, 0x5604989adfb0, undef:i64
try.c: 0x5604989adfb0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5604989f7100: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5604989ab120: i64 = undef
try.c: 0x560498a0f350: 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: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: i32 = Constant<0>
try.c: 0x560498a0f220: 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: 0x55f44f5040d0: v4i64 = X86ISD::VTRUNC 0x55f44f503fa0
try.c: 0x55f44f503fa0: v16i32 = vselect 0x55f44f500ab0, 0x55f44f496930, 0x55f44f503e70
try.c: 0x55f44f500ab0: v4i1 = X86ISD::PCMPGTM 0x55f44f4ea2d0, 0x55f44f4e56a0
try.c: 0x55f44f4ea2d0: v4i64 = X86ISD::VBROADCAST 0x55f44f496df0
try.c: 0x55f44f496df0: i64,ch = load<LD8[%lsr.iv6971]> 0x55f44f3e3a50, 0x55f44f47e300, undef:i64
try.c: 0x55f44f47e300: i64,ch = CopyFromReg 0x55f44f3e3a50, Register:i64 %vreg50
try.c: 0x55f44f4e5900: i64 = Register %vreg50
try.c: 0x55f44f484080: i64 = undef
try.c: 0x55f44f4e56a0: v4i64,ch = CopyFromReg 0x55f44f3e3a50, Register:v4i64 %vreg13
try.c: 0x55f44f4eab20: v4i64 = Register %vreg13
try.c: 0x55f44f496930: v16i32 = X86ISD::VBROADCAST 0x55f44f4ea530
try.c: 0x55f44f4ea530: i32,ch = load<LD4[ConstantPool]> 0x55f44f3e3a50, 0x55f44f4999d0, undef:i64
try.c: 0x55f44f4999d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55f44f484a00: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55f44f484080: i64 = undef
try.c: 0x55f44f503e70: 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: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: i32 = Constant<0>
try.c: 0x55f44f503d40: 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: 0x561ad2d4f250: v4i64 = X86ISD::VTRUNC 0x561ad2d4f120
try.c: 0x561ad2d4f120: v16i32 = vselect 0x561ad2d4bc30, 0x561ad2cdb190, 0x561ad2d4eff0
try.c: 0x561ad2d4bc30: v4i1 = X86ISD::PCMPGTM 0x561ad2d348c0, 0x561ad2d30450
try.c: 0x561ad2d348c0: v4i64 = X86ISD::VBROADCAST 0x561ad2cd43a0
try.c: 0x561ad2cd43a0: i64,ch = load<LD8[%lsr.iv6971]> 0x561ad2c45960, 0x561ad2d1e320, undef:i64
try.c: 0x561ad2d1e320: i64,ch = CopyFromReg 0x561ad2c45960, Register:i64 %vreg50
try.c: 0x561ad2d306b0: i64 = Register %vreg50
try.c: 0x561ad2cd5870: i64 = undef
try.c: 0x561ad2d30450: v4i64,ch = CopyFromReg 0x561ad2c45960, Register:v4i64 %vreg13
try.c: 0x561ad2d35110: v4i64 = Register %vreg13
try.c: 0x561ad2cdb190: v16i32 = X86ISD::VBROADCAST 0x561ad2d34b20
try.c: 0x561ad2d34b20: i32,ch = load<LD4[ConstantPool]> 0x561ad2c45960, 0x561ad2cd3980, undef:i64
try.c: 0x561ad2cd3980: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x561ad2cef2f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561ad2cd5870: i64 = undef
try.c: 0x561ad2d4eff0: 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: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: i32 = Constant<0>
try.c: 0x561ad2d4eec0: 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: 0x5586b6636b90: v4i64 = X86ISD::VTRUNC 0x5586b6636a60
try.c: 0x5586b6636a60: v16i32 = vselect 0x5586b663d230, 0x5586b65db1c0, 0x5586b6636930
try.c: 0x5586b663d230: v4i1 = X86ISD::PCMPGTM 0x5586b6631f00, 0x5586b662da90
try.c: 0x5586b6631f00: v4i64 = X86ISD::VBROADCAST 0x5586b65d8360
try.c: 0x5586b65d8360: i64,ch = load<LD8[%lsr.iv6971]> 0x5586b6542950, 0x5586b6621030, undef:i64
try.c: 0x5586b6621030: i64,ch = CopyFromReg 0x5586b6542950, Register:i64 %vreg50
try.c: 0x5586b662dcf0: i64 = Register %vreg50
try.c: 0x5586b65d9830: i64 = undef
try.c: 0x5586b662da90: v4i64,ch = CopyFromReg 0x5586b6542950, Register:v4i64 %vreg13
try.c: 0x5586b6632750: v4i64 = Register %vreg13
try.c: 0x5586b65db1c0: v16i32 = X86ISD::VBROADCAST 0x5586b6632160
try.c: 0x5586b6632160: i32,ch = load<LD4[ConstantPool]> 0x5586b6542950, 0x5586b65ed4b0, undef:i64
try.c: 0x5586b65ed4b0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5586b6623cb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5586b65d9830: i64 = undef
try.c: 0x5586b6636930: 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: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: i32 = Constant<0>
try.c: 0x5586b6636800: 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: 0x56501451bf00: v4i64 = X86ISD::VTRUNC 0x56501451bdd0
try.c: 0x56501451bdd0: v16i32 = vselect 0x5650144e82c0, 0x565014499e80, 0x56501451bca0
try.c: 0x5650144e82c0: v4i1 = X86ISD::PCMPGTM 0x5650145018f0, 0x5650144fe490
try.c: 0x5650145018f0: v4i64 = X86ISD::VBROADCAST 0x56501449a340
try.c: 0x56501449a340: i64,ch = load<LD8[%lsr.iv6971]> 0x5650143fba30, 0x56501449f380, undef:i64
try.c: 0x56501449f380: i64,ch = CopyFromReg 0x5650143fba30, Register:i64 %vreg50
try.c: 0x5650144fe6f0: i64 = Register %vreg50
try.c: 0x565014481d20: i64 = undef
try.c: 0x5650144fe490: v4i64,ch = CopyFromReg 0x5650143fba30, Register:v4i64 %vreg13
try.c: 0x565014502140: v4i64 = Register %vreg13
try.c: 0x565014499e80: v16i32 = X86ISD::VBROADCAST 0x565014501b50
try.c: 0x565014501b50: i32,ch = load<LD4[ConstantPool]> 0x5650143fba30, 0x56501449d950, undef:i64
try.c: 0x56501449d950: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5650144826a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x565014481d20: i64 = undef
try.c: 0x56501451bca0: 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: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: i32 = Constant<0>
try.c: 0x56501451bb70: 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: 0x56490bae5150: v4i64 = X86ISD::VTRUNC 0x56490bae5020
try.c: 0x56490bae5020: v16i32 = vselect 0x56490badfb20, 0x56490ba70bd0, 0x56490bae4ef0
try.c: 0x56490badfb20: v4i1 = X86ISD::PCMPGTM 0x56490bac87b0, 0x56490bac4340
try.c: 0x56490bac87b0: v4i64 = X86ISD::VBROADCAST 0x56490ba8ad90
try.c: 0x56490ba8ad90: i64,ch = load<LD8[%lsr.iv6971]> 0x56490b9d9950, 0x56490bab8ea0, undef:i64
try.c: 0x56490bab8ea0: i64,ch = CopyFromReg 0x56490b9d9950, Register:i64 %vreg50
try.c: 0x56490bac45a0: i64 = Register %vreg50
try.c: 0x56490ba6f240: i64 = undef
try.c: 0x56490bac4340: v4i64,ch = CopyFromReg 0x56490b9d9950, Register:v4i64 %vreg13
try.c: 0x56490bac9000: v4i64 = Register %vreg13
try.c: 0x56490ba70bd0: v16i32 = X86ISD::VBROADCAST 0x56490bac8a10
try.c: 0x56490bac8a10: i32,ch = load<LD4[ConstantPool]> 0x56490b9d9950, 0x56490ba8a370, undef:i64
try.c: 0x56490ba8a370: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56490ba81e40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56490ba6f240: i64 = undef
try.c: 0x56490bae4ef0: 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: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: i32 = Constant<0>
try.c: 0x56490bae4dc0: 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: 0x55d330503bb0: v4i64 = X86ISD::VTRUNC 0x55d330503a80
try.c: 0x55d330503a80: v16i32 = vselect 0x55d330500590, 0x55d3304b6360, 0x55d330503950
try.c: 0x55d330500590: v4i1 = X86ISD::PCMPGTM 0x55d3304fb940, 0x55d3304f74d0
try.c: 0x55d3304fb940: v4i64 = X86ISD::VBROADCAST 0x55d3304a3100
try.c: 0x55d3304a3100: i64,ch = load<LD8[%lsr.iv6971]> 0x55d33040c950, 0x55d3304e25c0, undef:i64
try.c: 0x55d3304e25c0: i64,ch = CopyFromReg 0x55d33040c950, Register:i64 %vreg50
try.c: 0x55d3304f7730: i64 = Register %vreg50
try.c: 0x55d3304b49d0: i64 = undef
try.c: 0x55d3304f74d0: v4i64,ch = CopyFromReg 0x55d33040c950, Register:v4i64 %vreg13
try.c: 0x55d3304fc190: v4i64 = Register %vreg13
try.c: 0x55d3304b6360: v16i32 = X86ISD::VBROADCAST 0x55d3304fbba0
try.c: 0x55d3304fbba0: i32,ch = load<LD4[ConstantPool]> 0x55d33040c950, 0x55d3304a26e0, undef:i64
try.c: 0x55d3304a26e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d3304e68b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d3304b49d0: i64 = undef
try.c: 0x55d330503950: 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: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: i32 = Constant<0>
try.c: 0x55d330503820: 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: 0x555cafd33dd0: v4i64 = X86ISD::VTRUNC 0x555cafd33ca0
try.c: 0x555cafd33ca0: v16i32 = vselect 0x555cafd38dc0, 0x555cafcbc210, 0x555cafd33b70
try.c: 0x555cafd38dc0: v4i1 = X86ISD::PCMPGTM 0x555cafd19c10, 0x555cafd167b0
try.c: 0x555cafd19c10: v4i64 = X86ISD::VBROADCAST 0x555cafcbc6d0
try.c: 0x555cafcbc6d0: i64,ch = load<LD8[%lsr.iv6971]> 0x555cafc13a30, 0x555cafcae6c0, undef:i64
try.c: 0x555cafcae6c0: i64,ch = CopyFromReg 0x555cafc13a30, Register:i64 %vreg50
try.c: 0x555cafd16a10: i64 = Register %vreg50
try.c: 0x555cafc92b90: i64 = undef
try.c: 0x555cafd167b0: v4i64,ch = CopyFromReg 0x555cafc13a30, Register:v4i64 %vreg13
try.c: 0x555cafd1a460: v4i64 = Register %vreg13
try.c: 0x555cafcbc210: v16i32 = X86ISD::VBROADCAST 0x555cafd19e70
try.c: 0x555cafd19e70: i32,ch = load<LD4[ConstantPool]> 0x555cafc13a30, 0x555cafcacc90, undef:i64
try.c: 0x555cafcacc90: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x555cafc93510: i64 = TargetConstantPool<i32 1> 0
try.c: 0x555cafc92b90: i64 = undef
try.c: 0x555cafd33b70: 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: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: i32 = Constant<0>
try.c: 0x555cafd33a40: 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: 0x55a3d97e8c80: v4i64 = X86ISD::VTRUNC 0x55a3d97e8b50
try.c: 0x55a3d97e8b50: v16i32 = vselect 0x55a3d97e4320, 0x55a3d97810d0, 0x55a3d97e8a20
try.c: 0x55a3d97e4320: v4i1 = X86ISD::PCMPGTM 0x55a3d97e0af0, 0x55a3d97dc680
try.c: 0x55a3d97e0af0: v4i64 = X86ISD::VBROADCAST 0x55a3d9783f40
try.c: 0x55a3d9783f40: i64,ch = load<LD8[%lsr.iv6971]> 0x55a3d96f1940, 0x55a3d97cbe20, undef:i64
try.c: 0x55a3d97cbe20: i64,ch = CopyFromReg 0x55a3d96f1940, Register:i64 %vreg50
try.c: 0x55a3d97dc8e0: i64 = Register %vreg50
try.c: 0x55a3d9785410: i64 = undef
try.c: 0x55a3d97dc680: v4i64,ch = CopyFromReg 0x55a3d96f1940, Register:v4i64 %vreg13
try.c: 0x55a3d97e1340: v4i64 = Register %vreg13
try.c: 0x55a3d97810d0: v16i32 = X86ISD::VBROADCAST 0x55a3d97e0d50
try.c: 0x55a3d97e0d50: i32,ch = load<LD4[ConstantPool]> 0x55a3d96f1940, 0x55a3d9790ae0, undef:i64
try.c: 0x55a3d9790ae0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a3d974dd60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a3d9785410: i64 = undef
try.c: 0x55a3d97e8a20: 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: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: i32 = Constant<0>
try.c: 0x55a3d97e88f0: 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: 0x55db5a765520: v4i64 = X86ISD::VTRUNC 0x55db5a7653f0
try.c: 0x55db5a7653f0: v16i32 = vselect 0x55db5a75fef0, 0x55db5a7162d0, 0x55db5a7652c0
try.c: 0x55db5a75fef0: v4i1 = X86ISD::PCMPGTM 0x55db5a75b830, 0x55db5a7573c0
try.c: 0x55db5a75b830: v4i64 = X86ISD::VBROADCAST 0x55db5a70ab50
try.c: 0x55db5a70ab50: i64,ch = load<LD8[%lsr.iv6971]> 0x55db5a66c950, 0x55db5a7469f0, undef:i64
try.c: 0x55db5a7469f0: i64,ch = CopyFromReg 0x55db5a66c950, Register:i64 %vreg50
try.c: 0x55db5a757620: i64 = Register %vreg50
try.c: 0x55db5a714940: i64 = undef
try.c: 0x55db5a7573c0: v4i64,ch = CopyFromReg 0x55db5a66c950, Register:v4i64 %vreg13
try.c: 0x55db5a75c080: v4i64 = Register %vreg13
try.c: 0x55db5a7162d0: v16i32 = X86ISD::VBROADCAST 0x55db5a75ba90
try.c: 0x55db5a75ba90: i32,ch = load<LD4[ConstantPool]> 0x55db5a66c950, 0x55db5a70a130, undef:i64
try.c: 0x55db5a70a130: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55db5a6c8d50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55db5a714940: i64 = undef
try.c: 0x55db5a7652c0: 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: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: i32 = Constant<0>
try.c: 0x55db5a765190: 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: 0x55bcaa7c3370: v4i64 = X86ISD::VTRUNC 0x55bcaa7c3240
try.c: 0x55bcaa7c3240: v16i32 = vselect 0x55bcaa7b35c0, 0x55bcaa74e4d0, 0x55bcaa7c3110
try.c: 0x55bcaa7b35c0: v4i1 = X86ISD::PCMPGTM 0x55bcaa79e230, 0x55bcaa79a7c0
try.c: 0x55bcaa79e230: v4i64 = X86ISD::VBROADCAST 0x55bcaa74e990
try.c: 0x55bcaa74e990: i64,ch = load<LD8[%lsr.iv6971]> 0x55bcaa698a10, 0x55bcaa75bf40, undef:i64
try.c: 0x55bcaa75bf40: i64,ch = CopyFromReg 0x55bcaa698a10, Register:i64 %vreg50
try.c: 0x55bcaa79aa20: i64 = Register %vreg50
try.c: 0x55bcaa7374b0: i64 = undef
try.c: 0x55bcaa79a7c0: v4i64,ch = CopyFromReg 0x55bcaa698a10, Register:v4i64 %vreg13
try.c: 0x55bcaa79ea80: v4i64 = Register %vreg13
try.c: 0x55bcaa74e4d0: v16i32 = X86ISD::VBROADCAST 0x55bcaa79e490
try.c: 0x55bcaa79e490: i32,ch = load<LD4[ConstantPool]> 0x55bcaa698a10, 0x55bcaa734d70, undef:i64
try.c: 0x55bcaa734d70: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55bcaa737e30: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55bcaa7374b0: i64 = undef
try.c: 0x55bcaa7c3110: 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: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: i32 = Constant<0>
try.c: 0x55bcaa7c2fe0: 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: 0x5591348768f0: v4i64 = X86ISD::VTRUNC 0x5591348767c0
try.c: 0x5591348767c0: v16i32 = vselect 0x55913489a570, 0x55913482cd10, 0x559134876690
try.c: 0x55913489a570: v4i1 = X86ISD::PCMPGTM 0x559134871830, 0x55913486d3c0
try.c: 0x559134871830: v4i64 = X86ISD::VBROADCAST 0x559134828980
try.c: 0x559134828980: i64,ch = load<LD8[%lsr.iv6971]> 0x559134782950, 0x559134860520, undef:i64
try.c: 0x559134860520: i64,ch = CopyFromReg 0x559134782950, Register:i64 %vreg50
try.c: 0x55913486d620: i64 = Register %vreg50
try.c: 0x55913482b380: i64 = undef
try.c: 0x55913486d3c0: v4i64,ch = CopyFromReg 0x559134782950, Register:v4i64 %vreg13
try.c: 0x559134872080: v4i64 = Register %vreg13
try.c: 0x55913482cd10: v16i32 = X86ISD::VBROADCAST 0x559134871a90
try.c: 0x559134871a90: i32,ch = load<LD4[ConstantPool]> 0x559134782950, 0x559134827f60, undef:i64
try.c: 0x559134827f60: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5591347e2bb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55913482b380: i64 = undef
try.c: 0x559134876690: 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: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: i32 = Constant<0>
try.c: 0x559134876560: 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