Implementation notes: amd64, cel02, crypto_aead/sablierv1

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: sablierv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2190786357 131328 025076 132128 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
22649410999 131328 031570 132136 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3018187901 131328 029068 132152 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
36946431478 131328 055965 132160 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8873645595 131328 026260 132152 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9410525114 131328 024296 132136 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:14:
encrypt.c: ./cipher_1.h:104:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:104:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: ./cipher_1.h:105:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:105:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: 2 warnings generated.
try.c: fatal error: error in backend: Cannot select: 0x56021e653f70: v4i64 = X86ISD::VTRUNC 0x56021e653e40
try.c: 0x56021e653e40: v16i32 = vselect 0x56021e64e940, 0x56021e5ed850, 0x56021e653d10
try.c: 0x56021e64e940: v4i1 = X86ISD::PCMPGTM 0x56021e64d930, 0x56021e6494c0
try.c: 0x56021e64d930: v4i64 = X86ISD::VBROADCAST 0x56021e5f0680
try.c: 0x56021e5f0680: i64,ch = load<LD8[%lsr.iv6971]> 0x56021e55e900, 0x56021e644320, undef:i64
try.c: 0x56021e644320: i64,ch = CopyFromReg 0x56021e55e900, Register:i64 %vreg50
try.c: 0x56021e649720: i64 = Register %vreg50
try.c: 0x56021e5f1b50: i64 = undef
try.c: 0x56021e6494c0: v4i64,ch = CopyFromReg 0x56021e55e900, Register:v4i64 %vreg13
try.c: 0x56021e64e180: v4i64 = Register %vreg13
try.c: 0x56021e5ed850: v16i32 = X86ISD::VBROADCAST 0x56021e64db90
try.c: 0x56021e64db90: i32,ch = load<LD4[ConstantPool]> 0x56021e55e900, 0x56021e609170, undef:i64
try.c: 0x56021e609170: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56021e5bad50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56021e5f1b50: i64 = undef
try.c: 0x56021e653d10: 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: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: i32 = Constant<0>
try.c: 0x56021e653be0: 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
encrypt.c: In file included from encrypt.c:14:
encrypt.c: ./cipher_1.h:104:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:104:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: ./cipher_1.h:105:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:105:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: fatal error: error in backend: Cannot select: 0x55a0c42ccc40: v64i8 = X86ISD::VBROADCAST 0x55a0c42c8790
encrypt.c: 0x55a0c42c8790: i8 = truncate 0x55a0c42d63c0
encrypt.c: 0x55a0c42d63c0: i32 = or 0x55a0c42c7650, 0x55a0c42dc9d0
encrypt.c: 0x55a0c42c7650: i32 = or 0x55a0c42c8070, 0x55a0c42d1b80
encrypt.c: 0x55a0c42c8070: i32 = or 0x55a0c42c8400, 0x55a0c42c97a0
encrypt.c: 0x55a0c42c8400: i32 = or 0x55a0c42e2bc0, 0x55a0c42dcb00
encrypt.c: 0x55a0c42e2bc0: i32 = or 0x55a0c42e9f80, 0x55a0c42d44d0
encrypt.c: 0x55a0c42e9f80: i32 = or 0x55a0c42c79e0, 0x55a0c42d6030
encrypt.c: 0x55a0c42c79e0: i32 = or 0x55a0c429d880, 0x55a0c42a0c00
encrypt.c: 0x55a0c429d880: i32 = srl 0x55a0c42a0c00, Constant:i8<1>
encrypt.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
encrypt.c: In file included from encrypt.c:14:
encrypt.c: ./cipher_1.h:104:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:104:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: ./cipher_1.h:105:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:105:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: 2 warnings generated.
try.c: fatal error: error in backend: Cannot select: 0x5602b64894f0: v4i64 = X86ISD::VTRUNC 0x5602b64893c0
try.c: 0x5602b64893c0: v16i32 = vselect 0x5602b649d3c0, 0x5602b6429d10, 0x5602b6489290
try.c: 0x5602b649d3c0: v4i1 = X86ISD::PCMPGTM 0x5602b6482830, 0x5602b647e3c0
try.c: 0x5602b6482830: v4i64 = X86ISD::VBROADCAST 0x5602b642d160
try.c: 0x5602b642d160: i64,ch = load<LD8[%lsr.iv6971]> 0x5602b6393990, 0x5602b646c680, undef:i64
try.c: 0x5602b646c680: i64,ch = CopyFromReg 0x5602b6393990, Register:i64 %vreg50
try.c: 0x5602b647e620: i64 = Register %vreg50
try.c: 0x5602b642e630: i64 = undef
try.c: 0x5602b647e3c0: v4i64,ch = CopyFromReg 0x5602b6393990, Register:v4i64 %vreg13
try.c: 0x5602b6483080: v4i64 = Register %vreg13
try.c: 0x5602b6429d10: v16i32 = X86ISD::VBROADCAST 0x5602b6482a90
try.c: 0x5602b6482a90: i32,ch = load<LD4[ConstantPool]> 0x5602b6393990, 0x5602b6427320, undef:i64
try.c: 0x5602b6427320: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5602b6440180: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5602b642e630: i64 = undef
try.c: 0x5602b6489290: 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: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: i32 = Constant<0>
try.c: 0x5602b6489160: 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:ref
Security model: timingleaks
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:14:
encrypt.c: ./cipher_1.h:104:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:104:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[0] = state->L2[0] ^ ( ~(state->L1[0]) ) & (state->L1[1]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: ./cipher_1.h:105:56: warning: '&' within '^' [-Wbitwise-op-parentheses]
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ~ ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
encrypt.c: ./cipher_1.h:105:56: note: place parentheses around the '&' expression to silence this warning
encrypt.c: tem_state->L4[1] = state->L2[1] ^ ( ~(state->L1[2]) ) & (state->L1[3]);
encrypt.c: ^
encrypt.c: ( )
encrypt.c: 2 warnings generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
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