Implementation notes: amd64, cel02, crypto_stream/amastrid

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_stream
Primitive: amastrid
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5797616376 24 236632937 1144 3176T:refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
9431818317 24 246236291 1680 3368T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
10920227018 24 246248256 1688 3432T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
11961417970 24 246235324 1664 3368T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12836411856 24 246227236 1112 3336T:refg++_-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
try.cpp: fatal error: error in backend: Cannot select: 0x562289290af0: v4i64 = X86ISD::VTRUNC 0x5622892909c0
try.cpp: 0x5622892909c0: v16i32 = vselect 0x562289280810, 0x562289228550, 0x562289290890
try.cpp: 0x562289280810: v4i1 = X86ISD::PCMPGTM 0x562289278310, 0x562289274cf0
try.cpp: 0x562289278310: v4i64 = X86ISD::VBROADCAST 0x56228921f470
try.cpp: 0x56228921f470: i64,ch = load<LD8[%lsr.iv6971]> 0x5622891889c0, 0x56228923bdd0, undef:i64
try.cpp: 0x56228923bdd0: i64,ch = CopyFromReg 0x5622891889c0, Register:i64 %vreg50
try.cpp: 0x562289274f50: i64 = Register %vreg50
try.cpp: 0x562289220940: i64 = undef
try.cpp: 0x562289274cf0: v4i64,ch = CopyFromReg 0x5622891889c0, Register:v4i64 %vreg13
try.cpp: 0x562289278b60: v4i64 = Register %vreg13
try.cpp: 0x562289228550: v16i32 = X86ISD::VBROADCAST 0x562289278570
try.cpp: 0x562289278570: i32,ch = load<LD4[ConstantPool]> 0x5622891889c0, 0x56228921ea50, undef:i64
try.cpp: 0x56228921ea50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5622892717d0: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x562289220940: i64 = undef
try.cpp: 0x562289290890: 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: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: i32 = Constant<0>
try.cpp: 0x562289290760: 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: 0x55637adc7b40: v4i64 = X86ISD::VTRUNC 0x55637adc7a10
try.cpp: 0x55637adc7a10: v16i32 = vselect 0x55637ada3860, 0x55637ad48d80, 0x55637adc78e0
try.cpp: 0x55637ada3860: v4i1 = X86ISD::PCMPGTM 0x55637adadba0, 0x55637ada9d30
try.cpp: 0x55637adadba0: v4i64 = X86ISD::VBROADCAST 0x55637ad49240
try.cpp: 0x55637ad49240: i64,ch = load<LD8[%lsr.iv6971]> 0x55637aca6a80, 0x55637ad57c40, undef:i64
try.cpp: 0x55637ad57c40: i64,ch = CopyFromReg 0x55637aca6a80, Register:i64 %vreg50
try.cpp: 0x55637ada9f90: i64 = Register %vreg50
try.cpp: 0x55637ad47820: i64 = undef
try.cpp: 0x55637ada9d30: v4i64,ch = CopyFromReg 0x55637aca6a80, Register:v4i64 %vreg13
try.cpp: 0x55637adae3f0: v4i64 = Register %vreg13
try.cpp: 0x55637ad48d80: v16i32 = X86ISD::VBROADCAST 0x55637adade00
try.cpp: 0x55637adade00: i32,ch = load<LD4[ConstantPool]> 0x55637aca6a80, 0x55637ad4b720, undef:i64
try.cpp: 0x55637ad4b720: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55637ad481a0: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55637ad47820: i64 = undef
try.cpp: 0x55637adc78e0: 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: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: i32 = Constant<0>
try.cpp: 0x55637adc77b0: 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: 0x55aa43903aa0: v4i64 = X86ISD::VTRUNC 0x55aa43903970
try.cpp: 0x55aa43903970: v16i32 = vselect 0x55aa43919000, 0x55aa438a31a0, 0x55aa43903840
try.cpp: 0x55aa43919000: v4i1 = X86ISD::PCMPGTM 0x55aa438ff480, 0x55aa438fb010
try.cpp: 0x55aa438ff480: v4i64 = X86ISD::VBROADCAST 0x55aa4389f610
try.cpp: 0x55aa4389f610: i64,ch = load<LD8[%lsr.iv6971]> 0x55aa4380e9c0, 0x55aa438f1c90, undef:i64
try.cpp: 0x55aa438f1c90: i64,ch = CopyFromReg 0x55aa4380e9c0, Register:i64 %vreg50
try.cpp: 0x55aa438fb270: i64 = Register %vreg50
try.cpp: 0x55aa438a1810: i64 = undef
try.cpp: 0x55aa438fb010: v4i64,ch = CopyFromReg 0x55aa4380e9c0, Register:v4i64 %vreg13
try.cpp: 0x55aa438ffcd0: v4i64 = Register %vreg13
try.cpp: 0x55aa438a31a0: v16i32 = X86ISD::VBROADCAST 0x55aa438ff6e0
try.cpp: 0x55aa438ff6e0: i32,ch = load<LD4[ConstantPool]> 0x55aa4380e9c0, 0x55aa4389ebf0, undef:i64
try.cpp: 0x55aa4389ebf0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55aa438e8590: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55aa438a1810: i64 = undef
try.cpp: 0x55aa43903840: 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: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: i32 = Constant<0>
try.cpp: 0x55aa43903710: 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