Implementation notes: amd64, cel02, crypto_stream/ocelot1

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_stream
Primitive: ocelot1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
605827238 4 2120952 868 904T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
613148812 4 2125745 876 968T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
640505120 4 2117284 852 872T:refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
650046908 4 2120232 868 904T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
651626267 4 3318788 868 824T:refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: fatal error: error in backend: Cannot select: 0x555ab850ed70: v4i64 = X86ISD::VTRUNC 0x555ab850ec40
try.cpp: 0x555ab850ec40: v16i32 = vselect 0x555ab8514fb0, 0x555ab84bb530, 0x555ab850eb10
try.cpp: 0x555ab8514fb0: v4i1 = X86ISD::PCMPGTM 0x555ab84f95b0, 0x555ab84f5b40
try.cpp: 0x555ab84f95b0: v4i64 = X86ISD::VBROADCAST 0x555ab849c850
try.cpp: 0x555ab849c850: i64,ch = load<LD8[%lsr.iv6971]> 0x555ab84099d0, 0x555ab84ddf90, undef:i64
try.cpp: 0x555ab84ddf90: i64,ch = CopyFromReg 0x555ab84099d0, Register:i64 %vreg50
try.cpp: 0x555ab84f5da0: i64 = Register %vreg50
try.cpp: 0x555ab849dd20: i64 = undef
try.cpp: 0x555ab84f5b40: v4i64,ch = CopyFromReg 0x555ab84099d0, Register:v4i64 %vreg13
try.cpp: 0x555ab84f9e00: v4i64 = Register %vreg13
try.cpp: 0x555ab84bb530: v16i32 = X86ISD::VBROADCAST 0x555ab84f9810
try.cpp: 0x555ab84f9810: i32,ch = load<LD4[ConstantPool]> 0x555ab84099d0, 0x555ab8488a10, undef:i64
try.cpp: 0x555ab8488a10: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x555ab84e4130: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x555ab849dd20: i64 = undef
try.cpp: 0x555ab850eb10: 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.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: 0x555ab850e9e0: i32 = Constant<0>
try.cpp: ...

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.cpp: fatal error: error in backend: Cannot select: 0x556a4ae76270: v4i64 = X86ISD::VTRUNC 0x556a4ae76140
try.cpp: 0x556a4ae76140: v16i32 = vselect 0x556a4ae620b0, 0x556a4ae0b520, 0x556a4ae76010
try.cpp: 0x556a4ae620b0: v4i1 = X86ISD::PCMPGTM 0x556a4ae5b500, 0x556a4ae57090
try.cpp: 0x556a4ae5b500: v4i64 = X86ISD::VBROADCAST 0x556a4ae0b9e0
try.cpp: 0x556a4ae0b9e0: i64,ch = load<LD8[%lsr.iv6971]> 0x556a4ad54a80, 0x556a4adf0c60, undef:i64
try.cpp: 0x556a4adf0c60: i64,ch = CopyFromReg 0x556a4ad54a80, Register:i64 %vreg50
try.cpp: 0x556a4ae572f0: i64 = Register %vreg50
try.cpp: 0x556a4ade9690: i64 = undef
try.cpp: 0x556a4ae57090: v4i64,ch = CopyFromReg 0x556a4ad54a80, Register:v4i64 %vreg13
try.cpp: 0x556a4ae5bd50: v4i64 = Register %vreg13
try.cpp: 0x556a4ae0b520: v16i32 = X86ISD::VBROADCAST 0x556a4ae5b760
try.cpp: 0x556a4ae5b760: i32,ch = load<LD4[ConstantPool]> 0x556a4ad54a80, 0x556a4ae00320, undef:i64
try.cpp: 0x556a4ae00320: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x556a4adea010: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x556a4ade9690: i64 = undef
try.cpp: 0x556a4ae76010: 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.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: 0x556a4ae75ee0: i32 = Constant<0>
try.cpp: ...

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.cpp: fatal error: error in backend: Cannot select: 0x5618901b0f30: v4i64 = X86ISD::VTRUNC 0x5618901b0e00
try.cpp: 0x5618901b0e00: v16i32 = vselect 0x56189019d620, 0x5618901400c0, 0x5618901b0cd0
try.cpp: 0x56189019d620: v4i1 = X86ISD::PCMPGTM 0x56189019a5f0, 0x561890196180
try.cpp: 0x56189019a5f0: v4i64 = X86ISD::VBROADCAST 0x561890139470
try.cpp: 0x561890139470: i64,ch = load<LD8[%lsr.iv6971]> 0x5618900a99c0, 0x561890184d30, undef:i64
try.cpp: 0x561890184d30: i64,ch = CopyFromReg 0x5618900a99c0, Register:i64 %vreg50
try.cpp: 0x5618901963e0: i64 = Register %vreg50
try.cpp: 0x56189013a940: i64 = undef
try.cpp: 0x561890196180: v4i64,ch = CopyFromReg 0x5618900a99c0, Register:v4i64 %vreg13
try.cpp: 0x56189019ae40: v4i64 = Register %vreg13
try.cpp: 0x5618901400c0: v16i32 = X86ISD::VBROADCAST 0x56189019a850
try.cpp: 0x56189019a850: i32,ch = load<LD4[ConstantPool]> 0x5618900a99c0, 0x561890138a50, undef:i64
try.cpp: 0x561890138a50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5618901834f0: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x56189013a940: i64 = undef
try.cpp: 0x5618901b0cd0: 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.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: 0x5618901b0ba0: i32 = Constant<0>
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref