Implementation notes: amd64, cel02, crypto_encrypt/ledapkc52sl

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_encrypt
Primitive: ledapkc52sl
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
5661625455360 5683720 091880 5684576 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6034219434553 5683720 069735 5684568 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6055420255130 5683720 091184 5684576 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6463764287889 5683720 0127720 5684576 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6826233452995 5683720 087899 5684544 1656T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
21700207254731 76 091457 912 1656T:portableoptclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:portableopt
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: 0x562fb9d1e340: v4i64 = X86ISD::VTRUNC 0x562fb9d1e210
try.c: 0x562fb9d1e210: v16i32 = vselect 0x562fb9d22280, 0x562fb9ca8a60, 0x562fb9d1e0e0
try.c: 0x562fb9d22280: v4i1 = X86ISD::PCMPGTM 0x562fb9d03b40, 0x562fb9cff910
try.c: 0x562fb9d03b40: v4i64 = X86ISD::VBROADCAST 0x562fb9cb0a80
try.c: 0x562fb9cb0a80: i64,ch = load<LD8[%lsr.iv6971]> 0x562fb9c15930, 0x562fb9cf1670, undef:i64
try.c: 0x562fb9cf1670: i64,ch = CopyFromReg 0x562fb9c15930, Register:i64 %vreg50
try.c: 0x562fb9cffb70: i64 = Register %vreg50
try.c: 0x562fb9cb1f50: i64 = undef
try.c: 0x562fb9cff910: v4i64,ch = CopyFromReg 0x562fb9c15930, Register:v4i64 %vreg13
try.c: 0x562fb9d04390: v4i64 = Register %vreg13
try.c: 0x562fb9ca8a60: v16i32 = X86ISD::VBROADCAST 0x562fb9d03da0
try.c: 0x562fb9d03da0: i32,ch = load<LD4[ConstantPool]> 0x562fb9c15930, 0x562fb9ca6df0, undef:i64
try.c: 0x562fb9ca6df0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x562fb9cfd000: i64 = TargetConstantPool<i32 1> 0
try.c: 0x562fb9cb1f50: i64 = undef
try.c: 0x562fb9d1e0e0: 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: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: i32 = Constant<0>
try.c: 0x562fb9d1dfb0: 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:portableopt

Compiler output

Implementation: T:portableopt
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: 0x556a83ebfe40: v4i64 = X86ISD::VTRUNC 0x556a83ebfd10
try.c: 0x556a83ebfd10: v16i32 = vselect 0x556a83eb07b0, 0x556a83e32f60, 0x556a83ebfbe0
try.c: 0x556a83eb07b0: v4i1 = X86ISD::PCMPGTM 0x556a83e9b5e0, 0x556a83e97b70
try.c: 0x556a83e9b5e0: v4i64 = X86ISD::VBROADCAST 0x556a83e33420
try.c: 0x556a83e33420: i64,ch = load<LD8[%lsr.iv6971]> 0x556a83d95a30, 0x556a83e380a0, undef:i64
try.c: 0x556a83e380a0: i64,ch = CopyFromReg 0x556a83d95a30, Register:i64 %vreg50
try.c: 0x556a83e97dd0: i64 = Register %vreg50
try.c: 0x556a83e4b000: i64 = undef
try.c: 0x556a83e97b70: v4i64,ch = CopyFromReg 0x556a83d95a30, Register:v4i64 %vreg13
try.c: 0x556a83e9be30: v4i64 = Register %vreg13
try.c: 0x556a83e32f60: v16i32 = X86ISD::VBROADCAST 0x556a83e9b840
try.c: 0x556a83e9b840: i32,ch = load<LD4[ConstantPool]> 0x556a83d95a30, 0x556a83e36670, undef:i64
try.c: 0x556a83e36670: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556a83e4b980: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556a83e4b000: i64 = undef
try.c: 0x556a83ebfbe0: 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: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: i32 = Constant<0>
try.c: 0x556a83ebfab0: 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:portableopt

Compiler output

Implementation: T:portableopt
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: 0x56136216ff80: v4i64 = X86ISD::VTRUNC 0x56136216fe50
try.c: 0x56136216fe50: v16i32 = vselect 0x561362160d60, 0x5613621240f0, 0x56136216fd20
try.c: 0x561362160d60: v4i1 = X86ISD::PCMPGTM 0x56136216a950, 0x5613621664e0
try.c: 0x56136216a950: v4i64 = X86ISD::VBROADCAST 0x5613621118a0
try.c: 0x5613621118a0: i64,ch = load<LD8[%lsr.iv6971]> 0x56136207b950, 0x5613621544b0, undef:i64
try.c: 0x5613621544b0: i64,ch = CopyFromReg 0x56136207b950, Register:i64 %vreg50
try.c: 0x561362166740: i64 = Register %vreg50
try.c: 0x561362112d70: i64 = undef
try.c: 0x5613621664e0: v4i64,ch = CopyFromReg 0x56136207b950, Register:v4i64 %vreg13
try.c: 0x56136216b1a0: v4i64 = Register %vreg13
try.c: 0x5613621240f0: v16i32 = X86ISD::VBROADCAST 0x56136216abb0
try.c: 0x56136216abb0: i32,ch = load<LD4[ConstantPool]> 0x56136207b950, 0x561362110e80, undef:i64
try.c: 0x561362110e80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5613621556b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561362112d70: i64 = undef
try.c: 0x56136216fd20: 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: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: i32 = Constant<0>
try.c: 0x56136216fbf0: 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:portableopt