Implementation notes: amd64, cel02, crypto_encrypt/ledapkc3264

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_encrypt
Primitive: ledapkc3264
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2225389252879 1306632 087779 1307456 1656T:portableoptclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2262913685267 1306632 0125120 1307488 1720T:portableoptgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2883331655639 1306632 092152 1307488 1688T:portableoptgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3140933255297 1306632 091312 1307488 1688T:portableoptgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3267554834729 1306632 069935 1307480 1656T:portableoptgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4010198052609 72 089281 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: 0x556f296cc2c0: v4i64 = X86ISD::VTRUNC 0x556f296cc190
try.c: 0x556f296cc190: v16i32 = vselect 0x556f296a1e60, 0x556f2964f480, 0x556f296cc060
try.c: 0x556f296a1e60: v4i1 = X86ISD::PCMPGTM 0x556f296aba50, 0x556f296a75e0
try.c: 0x556f296aba50: v4i64 = X86ISD::VBROADCAST 0x556f29651840
try.c: 0x556f29651840: i64,ch = load<LD8[%lsr.iv6971]> 0x556f295bc940, 0x556f29691b70, undef:i64
try.c: 0x556f29691b70: i64,ch = CopyFromReg 0x556f295bc940, Register:i64 %vreg50
try.c: 0x556f296a7840: i64 = Register %vreg50
try.c: 0x556f29652d10: i64 = undef
try.c: 0x556f296a75e0: v4i64,ch = CopyFromReg 0x556f295bc940, Register:v4i64 %vreg13
try.c: 0x556f296ac2a0: v4i64 = Register %vreg13
try.c: 0x556f2964f480: v16i32 = X86ISD::VBROADCAST 0x556f296abcb0
try.c: 0x556f296abcb0: i32,ch = load<LD4[ConstantPool]> 0x556f295bc940, 0x556f29648e60, undef:i64
try.c: 0x556f29648e60: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556f296969b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556f29652d10: i64 = undef
try.c: 0x556f296cc060: 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: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: i32 = Constant<0>
try.c: 0x556f296cbf30: 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: 0x558874262610: v4i64 = X86ISD::VTRUNC 0x5588742624e0
try.c: 0x5588742624e0: v16i32 = vselect 0x55887425cfe0, 0x5588741fce50, 0x5588742623b0
try.c: 0x55887425cfe0: v4i1 = X86ISD::PCMPGTM 0x558874259fc0, 0x558874255b50
try.c: 0x558874259fc0: v4i64 = X86ISD::VBROADCAST 0x5588741fd310
try.c: 0x5588741fd310: i64,ch = load<LD8[%lsr.iv6971]> 0x558874153a30, 0x5588741ed800, undef:i64
try.c: 0x5588741ed800: i64,ch = CopyFromReg 0x558874153a30, Register:i64 %vreg50
try.c: 0x558874255db0: i64 = Register %vreg50
try.c: 0x558874202c10: i64 = undef
try.c: 0x558874255b50: v4i64,ch = CopyFromReg 0x558874153a30, Register:v4i64 %vreg13
try.c: 0x55887425a810: v4i64 = Register %vreg13
try.c: 0x5588741fce50: v16i32 = X86ISD::VBROADCAST 0x55887425a220
try.c: 0x55887425a220: i32,ch = load<LD4[ConstantPool]> 0x558874153a30, 0x5588741f2a20, undef:i64
try.c: 0x5588741f2a20: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558874203590: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558874202c10: i64 = undef
try.c: 0x5588742623b0: 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: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: i32 = Constant<0>
try.c: 0x558874262280: 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: 0x558fc1522a80: v4i64 = X86ISD::VTRUNC 0x558fc1522950
try.c: 0x558fc1522950: v16i32 = vselect 0x558fc1515c70, 0x558fc14c4dc0, 0x558fc1522820
try.c: 0x558fc1515c70: v4i1 = X86ISD::PCMPGTM 0x558fc151d840, 0x558fc15193d0
try.c: 0x558fc151d840: v4i64 = X86ISD::VBROADCAST 0x558fc14bde40
try.c: 0x558fc14bde40: i64,ch = load<LD8[%lsr.iv6971]> 0x558fc142e940, 0x558fc15076f0, undef:i64
try.c: 0x558fc15076f0: i64,ch = CopyFromReg 0x558fc142e940, Register:i64 %vreg50
try.c: 0x558fc1519630: i64 = Register %vreg50
try.c: 0x558fc14bf310: i64 = undef
try.c: 0x558fc15193d0: v4i64,ch = CopyFromReg 0x558fc142e940, Register:v4i64 %vreg13
try.c: 0x558fc151e090: v4i64 = Register %vreg13
try.c: 0x558fc14c4dc0: v16i32 = X86ISD::VBROADCAST 0x558fc151daa0
try.c: 0x558fc151daa0: i32,ch = load<LD4[ConstantPool]> 0x558fc142e940, 0x558fc14c2480, undef:i64
try.c: 0x558fc14c2480: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558fc14b9d50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558fc14bf310: i64 = undef
try.c: 0x558fc1522820: 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: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: i32 = Constant<0>
try.c: 0x558fc15226f0: 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