Implementation notes: amd64, cel02, crypto_encrypt/ledapkc12sl

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_encrypt
Primitive: ledapkc12sl
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1197252252879 848648 087827 849472 1656T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1279577282871 848648 0122696 849504 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1546964634763 848648 069999 849496 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1580323655769 848648 092272 849504 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1703582055318 848648 091368 849504 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4032953658581 68 095233 904 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: 0x561161b08130: v4i64 = X86ISD::VTRUNC 0x561161b08000
try.c: 0x561161b08000: v16i32 = vselect 0x561161b24090, 0x561161aaa280, 0x561161b07ed0
try.c: 0x561161b24090: v4i1 = X86ISD::PCMPGTM 0x561161b03960, 0x561161aff4f0
try.c: 0x561161b03960: v4i64 = X86ISD::VBROADCAST 0x561161aa6210
try.c: 0x561161aa6210: i64,ch = load<LD8[%lsr.iv6971]> 0x561161a14930, 0x561161aed960, undef:i64
try.c: 0x561161aed960: i64,ch = CopyFromReg 0x561161a14930, Register:i64 %vreg50
try.c: 0x561161aff750: i64 = Register %vreg50
try.c: 0x561161aa76e0: i64 = undef
try.c: 0x561161aff4f0: v4i64,ch = CopyFromReg 0x561161a14930, Register:v4i64 %vreg13
try.c: 0x561161b041b0: v4i64 = Register %vreg13
try.c: 0x561161aaa280: v16i32 = X86ISD::VBROADCAST 0x561161b03bc0
try.c: 0x561161b03bc0: i32,ch = load<LD4[ConstantPool]> 0x561161a14930, 0x561161aba150, undef:i64
try.c: 0x561161aba150: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x561161aeeb60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561161aa76e0: i64 = undef
try.c: 0x561161b07ed0: 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: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: i32 = Constant<0>
try.c: 0x561161b07da0: 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: 0x55c33e3592f0: v4i64 = X86ISD::VTRUNC 0x55c33e3591c0
try.c: 0x55c33e3591c0: v16i32 = vselect 0x55c33e353870, 0x55c33e2c8f20, 0x55c33e359090
try.c: 0x55c33e353870: v4i1 = X86ISD::PCMPGTM 0x55c33e334410, 0x55c33e331f30
try.c: 0x55c33e334410: v4i64 = X86ISD::VBROADCAST 0x55c33e2c93e0
try.c: 0x55c33e2c93e0: i64,ch = load<LD8[%lsr.iv6971]> 0x55c33e22ea00, 0x55c33e2d1080, undef:i64
try.c: 0x55c33e2d1080: i64,ch = CopyFromReg 0x55c33e22ea00, Register:i64 %vreg50
try.c: 0x55c33e332190: i64 = Register %vreg50
try.c: 0x55c33e2ddbc0: i64 = undef
try.c: 0x55c33e331f30: v4i64,ch = CopyFromReg 0x55c33e22ea00, Register:v4i64 %vreg13
try.c: 0x55c33e334c60: v4i64 = Register %vreg13
try.c: 0x55c33e2c8f20: v16i32 = X86ISD::VBROADCAST 0x55c33e334670
try.c: 0x55c33e334670: i32,ch = load<LD4[ConstantPool]> 0x55c33e22ea00, 0x55c33e2cf650, undef:i64
try.c: 0x55c33e2cf650: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c33e2de540: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c33e2ddbc0: i64 = undef
try.c: 0x55c33e359090: 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: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: i32 = Constant<0>
try.c: 0x55c33e358f60: 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: 0x559d69bfe300: v4i64 = X86ISD::VTRUNC 0x559d69bfe1d0
try.c: 0x559d69bfe1d0: v16i32 = vselect 0x559d69c1a260, 0x559d69bc3d20, 0x559d69bfe0a0
try.c: 0x559d69c1a260: v4i1 = X86ISD::PCMPGTM 0x559d69bf98c0, 0x559d69bf5450
try.c: 0x559d69bf98c0: v4i64 = X86ISD::VBROADCAST 0x559d69b9a880
try.c: 0x559d69b9a880: i64,ch = load<LD8[%lsr.iv6971]> 0x559d69b0a950, 0x559d69be37a0, undef:i64
try.c: 0x559d69be37a0: i64,ch = CopyFromReg 0x559d69b0a950, Register:i64 %vreg50
try.c: 0x559d69bf56b0: i64 = Register %vreg50
try.c: 0x559d69bc2390: i64 = undef
try.c: 0x559d69bf5450: v4i64,ch = CopyFromReg 0x559d69b0a950, Register:v4i64 %vreg13
try.c: 0x559d69bfa110: v4i64 = Register %vreg13
try.c: 0x559d69bc3d20: v16i32 = X86ISD::VBROADCAST 0x559d69bf9b20
try.c: 0x559d69bf9b20: i32,ch = load<LD4[ConstantPool]> 0x559d69b0a950, 0x559d69b99e60, undef:i64
try.c: 0x559d69b99e60: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x559d69ba5cd0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x559d69bc2390: i64 = undef
try.c: 0x559d69bfe0a0: 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: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: i32 = Constant<0>
try.c: 0x559d69bfdf70: 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