Implementation notes: amd64, cel02, crypto_encode/761xint16

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_encode
Primitive: 761xint16
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
11861 0 09304 800 768littlegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12464 0 09428 792 728littleclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
136105 0 010492 816 768littlegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
158106 0 010244 816 768littlegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
200105 0 013781 824 800littlegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
23464 0 011274 800 728littleclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
4282373 0 016085 824 800refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
157273 0 09428 792 728refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
158293 0 010476 816 768refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
178083 0 010212 816 768refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
245278 0 09288 800 768refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
280086 0 011290 800 728refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: little
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x556ac81223e0: v4i64 = X86ISD::VTRUNC 0x556ac81222b0
try.c: 0x556ac81222b0: v16i32 = vselect 0x556ac810ec00, 0x556ac80a8c90, 0x556ac8122180
try.c: 0x556ac810ec00: v4i1 = X86ISD::PCMPGTM 0x556ac8108a70, 0x556ac8104600
try.c: 0x556ac8108a70: v4i64 = X86ISD::VBROADCAST 0x556ac80b3cb0
try.c: 0x556ac80b3cb0: i64,ch = load<LD8[%lsr.iv6971]> 0x556ac8019920, 0x556ac80ff460, undef:i64
try.c: 0x556ac80ff460: i64,ch = CopyFromReg 0x556ac8019920, Register:i64 %vreg50
try.c: 0x556ac8104860: i64 = Register %vreg50
try.c: 0x556ac80b5180: i64 = undef
try.c: 0x556ac8104600: v4i64,ch = CopyFromReg 0x556ac8019920, Register:v4i64 %vreg13
try.c: 0x556ac81092c0: v4i64 = Register %vreg13
try.c: 0x556ac80a8c90: v16i32 = X86ISD::VBROADCAST 0x556ac8108cd0
try.c: 0x556ac8108cd0: i32,ch = load<LD4[ConstantPool]> 0x556ac8019920, 0x556ac80b18e0, undef:i64
try.c: 0x556ac80b18e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556ac80fbca0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556ac80b5180: i64 = undef
try.c: 0x556ac8122180: 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: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: i32 = Constant<0>
try.c: 0x556ac8122050: 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 little

Compiler output

Implementation: little
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x556bc15ce0c0: v4i64 = X86ISD::VTRUNC 0x556bc15cdf90
try.c: 0x556bc15cdf90: v16i32 = vselect 0x556bc15b1440, 0x556bc1541c60, 0x556bc15cde60
try.c: 0x556bc15b1440: v4i1 = X86ISD::PCMPGTM 0x556bc15a7fc0, 0x556bc15a3b50
try.c: 0x556bc15a7fc0: v4i64 = X86ISD::VBROADCAST 0x556bc1542120
try.c: 0x556bc1542120: i64,ch = load<LD8[%lsr.iv6971]> 0x556bc14a1a30, 0x556bc153a630, undef:i64
try.c: 0x556bc153a630: i64,ch = CopyFromReg 0x556bc14a1a30, Register:i64 %vreg50
try.c: 0x556bc15a3db0: i64 = Register %vreg50
try.c: 0x556bc153f160: i64 = undef
try.c: 0x556bc15a3b50: v4i64,ch = CopyFromReg 0x556bc14a1a30, Register:v4i64 %vreg13
try.c: 0x556bc15a8810: v4i64 = Register %vreg13
try.c: 0x556bc1541c60: v16i32 = X86ISD::VBROADCAST 0x556bc15a8220
try.c: 0x556bc15a8220: i32,ch = load<LD4[ConstantPool]> 0x556bc14a1a30, 0x556bc1544600, undef:i64
try.c: 0x556bc1544600: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556bc153fae0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556bc153f160: i64 = undef
try.c: 0x556bc15cde60: 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: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: i32 = Constant<0>
try.c: 0x556bc15cdd30: 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 little

Compiler output

Implementation: little
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55c88e4611c0: v4i64 = X86ISD::VTRUNC 0x55c88e461090
try.c: 0x55c88e461090: v16i32 = vselect 0x55c88e441c90, 0x55c88e3eeec0, 0x55c88e460f60
try.c: 0x55c88e441c90: v4i1 = X86ISD::PCMPGTM 0x55c88e449860, 0x55c88e4453f0
try.c: 0x55c88e449860: v4i64 = X86ISD::VBROADCAST 0x55c88e3f12b0
try.c: 0x55c88e3f12b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55c88e35a950, 0x55c88e438250, undef:i64
try.c: 0x55c88e438250: i64,ch = CopyFromReg 0x55c88e35a950, Register:i64 %vreg50
try.c: 0x55c88e445650: i64 = Register %vreg50
try.c: 0x55c88e3ed530: i64 = undef
try.c: 0x55c88e4453f0: v4i64,ch = CopyFromReg 0x55c88e35a950, Register:v4i64 %vreg13
try.c: 0x55c88e44a0b0: v4i64 = Register %vreg13
try.c: 0x55c88e3eeec0: v16i32 = X86ISD::VBROADCAST 0x55c88e449ac0
try.c: 0x55c88e449ac0: i32,ch = load<LD4[ConstantPool]> 0x55c88e35a950, 0x55c88e3f0890, undef:i64
try.c: 0x55c88e3f0890: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c88e3e5330: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c88e3ed530: i64 = undef
try.c: 0x55c88e460f60: 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: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: i32 = Constant<0>
try.c: 0x55c88e460e30: 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 little

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x56087de40ef0: v4i64 = X86ISD::VTRUNC 0x56087de40dc0
try.c: 0x56087de40dc0: v16i32 = vselect 0x56087de48a50, 0x56087ddca8b0, 0x56087de40c90
try.c: 0x56087de48a50: v4i1 = X86ISD::PCMPGTM 0x56087de25710, 0x56087de212a0
try.c: 0x56087de25710: v4i64 = X86ISD::VBROADCAST 0x56087ddc6830
try.c: 0x56087ddc6830: i64,ch = load<LD8[%lsr.iv6971]> 0x56087dd36950, 0x56087de0f1e0, undef:i64
try.c: 0x56087de0f1e0: i64,ch = CopyFromReg 0x56087dd36950, Register:i64 %vreg50
try.c: 0x56087de21500: i64 = Register %vreg50
try.c: 0x56087ddc8f20: i64 = undef
try.c: 0x56087de212a0: v4i64,ch = CopyFromReg 0x56087dd36950, Register:v4i64 %vreg13
try.c: 0x56087de25f60: v4i64 = Register %vreg13
try.c: 0x56087ddca8b0: v16i32 = X86ISD::VBROADCAST 0x56087de25970
try.c: 0x56087de25970: i32,ch = load<LD4[ConstantPool]> 0x56087dd36950, 0x56087ddc5e10, undef:i64
try.c: 0x56087ddc5e10: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56087de10810: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56087ddc8f20: i64 = undef
try.c: 0x56087de40c90: 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: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: i32 = Constant<0>
try.c: 0x56087de40b60: 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 ref

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x561dc5981d50: v4i64 = X86ISD::VTRUNC 0x561dc5981c20
try.c: 0x561dc5981c20: v16i32 = vselect 0x561dc597e730, 0x561dc5904f40, 0x561dc5981af0
try.c: 0x561dc597e730: v4i1 = X86ISD::PCMPGTM 0x561dc59673c0, 0x561dc5965ef0
try.c: 0x561dc59673c0: v4i64 = X86ISD::VBROADCAST 0x561dc5905400
try.c: 0x561dc5905400: i64,ch = load<LD8[%lsr.iv6971]> 0x561dc5862a30, 0x561dc590a780, undef:i64
try.c: 0x561dc590a780: i64,ch = CopyFromReg 0x561dc5862a30, Register:i64 %vreg50
try.c: 0x561dc5966150: i64 = Register %vreg50
try.c: 0x561dc5901c80: i64 = undef
try.c: 0x561dc5965ef0: v4i64,ch = CopyFromReg 0x561dc5862a30, Register:v4i64 %vreg13
try.c: 0x561dc5967c10: v4i64 = Register %vreg13
try.c: 0x561dc5904f40: v16i32 = X86ISD::VBROADCAST 0x561dc5967620
try.c: 0x561dc5967620: i32,ch = load<LD4[ConstantPool]> 0x561dc5862a30, 0x561dc5908540, undef:i64
try.c: 0x561dc5908540: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x561dc5902600: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561dc5901c80: i64 = undef
try.c: 0x561dc5981af0: 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: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: i32 = Constant<0>
try.c: 0x561dc59819c0: 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 ref

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55d8b2600850: v4i64 = X86ISD::VTRUNC 0x55d8b2600720
try.c: 0x55d8b2600720: v16i32 = vselect 0x55d8b2605060, 0x55d8b25a57b0, 0x55d8b26005f0
try.c: 0x55d8b2605060: v4i1 = X86ISD::PCMPGTM 0x55d8b25fa220, 0x55d8b25f5db0
try.c: 0x55d8b25fa220: v4i64 = X86ISD::VBROADCAST 0x55d8b25af060
try.c: 0x55d8b25af060: i64,ch = load<LD8[%lsr.iv6971]> 0x55d8b250a990, 0x55d8b25ed550, undef:i64
try.c: 0x55d8b25ed550: i64,ch = CopyFromReg 0x55d8b250a990, Register:i64 %vreg50
try.c: 0x55d8b25f6010: i64 = Register %vreg50
try.c: 0x55d8b25b0530: i64 = undef
try.c: 0x55d8b25f5db0: v4i64,ch = CopyFromReg 0x55d8b250a990, Register:v4i64 %vreg13
try.c: 0x55d8b25faa70: v4i64 = Register %vreg13
try.c: 0x55d8b25a57b0: v16i32 = X86ISD::VBROADCAST 0x55d8b25fa480
try.c: 0x55d8b25fa480: i32,ch = load<LD4[ConstantPool]> 0x55d8b250a990, 0x55d8b259b0e0, undef:i64
try.c: 0x55d8b259b0e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d8b25df1c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d8b25b0530: i64 = undef
try.c: 0x55d8b26005f0: 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: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: i32 = Constant<0>
try.c: 0x55d8b26004c0: 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 ref