Implementation notes: amd64, cel02, crypto_aead/clx256h

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: clx256h
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4091042109 0 016484 816 896T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4993402566 0 017306 800 856T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
5012881731 0 014628 792 856T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
7294046635 0 024293 824 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7381604072 0 018810 800 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
7761281871 0 014792 800 896T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8502841426 0 015572 816 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8508962901 0 020557 824 960T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8825422009 0 016156 816 896T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
16127161325 0 014248 800 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
16488381501 0 015884 816 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
19263561282 0 014188 792 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:opt
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: 0x558c6363a8f0: v4i64 = X86ISD::VTRUNC 0x558c6363a7c0
try.c: 0x558c6363a7c0: v16i32 = vselect 0x558c636372d0, 0x558c635c7780, 0x558c6363a690
try.c: 0x558c636372d0: v4i1 = X86ISD::PCMPGTM 0x558c6361ff60, 0x558c6361baf0
try.c: 0x558c6361ff60: v4i64 = X86ISD::VBROADCAST 0x558c635c0b10
try.c: 0x558c635c0b10: i64,ch = load<LD8[%lsr.iv6971]> 0x558c63530900, 0x558c63606850, undef:i64
try.c: 0x558c63606850: i64,ch = CopyFromReg 0x558c63530900, Register:i64 %vreg50
try.c: 0x558c6361bd50: i64 = Register %vreg50
try.c: 0x558c635c5df0: i64 = undef
try.c: 0x558c6361baf0: v4i64,ch = CopyFromReg 0x558c63530900, Register:v4i64 %vreg13
try.c: 0x558c636207b0: v4i64 = Register %vreg13
try.c: 0x558c635c7780: v16i32 = X86ISD::VBROADCAST 0x558c636201c0
try.c: 0x558c636201c0: i32,ch = load<LD4[ConstantPool]> 0x558c63530900, 0x558c635c00f0, undef:i64
try.c: 0x558c635c00f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558c635a27e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558c635c5df0: i64 = undef
try.c: 0x558c6363a690: 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: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: i32 = Constant<0>
try.c: 0x558c6363a560: 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:opt

Compiler output

Implementation: T:opt
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: 0x5618b2fdbe30: v4i64 = X86ISD::VTRUNC 0x5618b2fdbd00
try.c: 0x5618b2fdbd00: v16i32 = vselect 0x5618b2fcc430, 0x5618b2f4f050, 0x5618b2fdbbd0
try.c: 0x5618b2fcc430: v4i1 = X86ISD::PCMPGTM 0x5618b2fb7ea0, 0x5618b2fb3a30
try.c: 0x5618b2fb7ea0: v4i64 = X86ISD::VBROADCAST 0x5618b2f4f510
try.c: 0x5618b2f4f510: i64,ch = load<LD8[%lsr.iv6971]> 0x5618b2eb1a00, 0x5618b2f63140, undef:i64
try.c: 0x5618b2f63140: i64,ch = CopyFromReg 0x5618b2eb1a00, Register:i64 %vreg50
try.c: 0x5618b2fb3c90: i64 = Register %vreg50
try.c: 0x5618b2f56540: i64 = undef
try.c: 0x5618b2fb3a30: v4i64,ch = CopyFromReg 0x5618b2eb1a00, Register:v4i64 %vreg13
try.c: 0x5618b2fb86f0: v4i64 = Register %vreg13
try.c: 0x5618b2f4f050: v16i32 = X86ISD::VBROADCAST 0x5618b2fb8100
try.c: 0x5618b2fb8100: i32,ch = load<LD4[ConstantPool]> 0x5618b2eb1a00, 0x5618b2f61710, undef:i64
try.c: 0x5618b2f61710: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5618b2f56ec0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5618b2f56540: i64 = undef
try.c: 0x5618b2fdbbd0: 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: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: i32 = Constant<0>
try.c: 0x5618b2fdbaa0: 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:opt

Compiler output

Implementation: T:opt
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: 0x55840506b1b0: v4i64 = X86ISD::VTRUNC 0x55840506b080
try.c: 0x55840506b080: v16i32 = vselect 0x558405065b80, 0x55840500b980, 0x55840506af50
try.c: 0x558405065b80: v4i1 = X86ISD::PCMPGTM 0x558405064b70, 0x558405060700
try.c: 0x558405064b70: v4i64 = X86ISD::VBROADCAST 0x558405007500
try.c: 0x558405007500: i64,ch = load<LD8[%lsr.iv6971]> 0x558404f75970, 0x55840504e940, undef:i64
try.c: 0x55840504e940: i64,ch = CopyFromReg 0x558404f75970, Register:i64 %vreg50
try.c: 0x558405060960: i64 = Register %vreg50
try.c: 0x5584050089d0: i64 = undef
try.c: 0x558405060700: v4i64,ch = CopyFromReg 0x558404f75970, Register:v4i64 %vreg13
try.c: 0x5584050653c0: v4i64 = Register %vreg13
try.c: 0x55840500b980: v16i32 = X86ISD::VBROADCAST 0x558405064dd0
try.c: 0x558405064dd0: i32,ch = load<LD4[ConstantPool]> 0x558404f75970, 0x558405005840, undef:i64
try.c: 0x558405005840: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55840504fb40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5584050089d0: i64 = undef
try.c: 0x55840506af50: 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: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: i32 = Constant<0>
try.c: 0x55840506ae20: 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:opt

Compiler output

Implementation: T:ref
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: 0x5584ba2b1350: v4i64 = X86ISD::VTRUNC 0x5584ba2b1220
try.c: 0x5584ba2b1220: v16i32 = vselect 0x5584ba2b79b0, 0x5584ba24f040, 0x5584ba2b10f0
try.c: 0x5584ba2b79b0: v4i1 = X86ISD::PCMPGTM 0x5584ba2999f0, 0x5584ba295580
try.c: 0x5584ba2999f0: v4i64 = X86ISD::VBROADCAST 0x5584ba241670
try.c: 0x5584ba241670: i64,ch = load<LD8[%lsr.iv6971]> 0x5584ba1aa920, 0x5584ba2833d0, undef:i64
try.c: 0x5584ba2833d0: i64,ch = CopyFromReg 0x5584ba1aa920, Register:i64 %vreg50
try.c: 0x5584ba2957e0: i64 = Register %vreg50
try.c: 0x5584ba242b40: i64 = undef
try.c: 0x5584ba295580: v4i64,ch = CopyFromReg 0x5584ba1aa920, Register:v4i64 %vreg13
try.c: 0x5584ba29a240: v4i64 = Register %vreg13
try.c: 0x5584ba24f040: v16i32 = X86ISD::VBROADCAST 0x5584ba299c50
try.c: 0x5584ba299c50: i32,ch = load<LD4[ConstantPool]> 0x5584ba1aa920, 0x5584ba240c50, undef:i64
try.c: 0x5584ba240c50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5584ba237290: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5584ba242b40: i64 = undef
try.c: 0x5584ba2b10f0: 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: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: i32 = Constant<0>
try.c: 0x5584ba2b0fc0: 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:ref

Compiler output

Implementation: T:ref
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: 0x55f094fb76d0: v4i64 = X86ISD::VTRUNC 0x55f094fb75a0
try.c: 0x55f094fb75a0: v16i32 = vselect 0x55f094fbc560, 0x55f094f48b20, 0x55f094fb7470
try.c: 0x55f094fbc560: v4i1 = X86ISD::PCMPGTM 0x55f094fb1090, 0x55f094facc20
try.c: 0x55f094fb1090: v4i64 = X86ISD::VBROADCAST 0x55f094f48fe0
try.c: 0x55f094f48fe0: i64,ch = load<LD8[%lsr.iv6971]> 0x55f094eaaa00, 0x55f094f4c0e0, undef:i64
try.c: 0x55f094f4c0e0: i64,ch = CopyFromReg 0x55f094eaaa00, Register:i64 %vreg50
try.c: 0x55f094face80: i64 = Register %vreg50
try.c: 0x55f094f3e030: i64 = undef
try.c: 0x55f094facc20: v4i64,ch = CopyFromReg 0x55f094eaaa00, Register:v4i64 %vreg13
try.c: 0x55f094fb18e0: v4i64 = Register %vreg13
try.c: 0x55f094f48b20: v16i32 = X86ISD::VBROADCAST 0x55f094fb12f0
try.c: 0x55f094fb12f0: i32,ch = load<LD4[ConstantPool]> 0x55f094eaaa00, 0x55f094f45760, undef:i64
try.c: 0x55f094f45760: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55f094f3e9b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55f094f3e030: i64 = undef
try.c: 0x55f094fb7470: 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: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: i32 = Constant<0>
try.c: 0x55f094fb7340: 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:ref

Compiler output

Implementation: T:ref
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: 0x5615e34fef20: v4i64 = X86ISD::VTRUNC 0x5615e34fedf0
try.c: 0x5615e34fedf0: v16i32 = vselect 0x5615e34f98f0, 0x5615e34a05d0, 0x5615e34fecc0
try.c: 0x5615e34f98f0: v4i1 = X86ISD::PCMPGTM 0x5615e34f88e0, 0x5615e34f4470
try.c: 0x5615e34f88e0: v4i64 = X86ISD::VBROADCAST 0x5615e34989f0
try.c: 0x5615e34989f0: i64,ch = load<LD8[%lsr.iv6971]> 0x5615e3409920, 0x5615e34e3b60, undef:i64
try.c: 0x5615e34e3b60: i64,ch = CopyFromReg 0x5615e3409920, Register:i64 %vreg50
try.c: 0x5615e34f46d0: i64 = Register %vreg50
try.c: 0x5615e349ec40: i64 = undef
try.c: 0x5615e34f4470: v4i64,ch = CopyFromReg 0x5615e3409920, Register:v4i64 %vreg13
try.c: 0x5615e34f9130: v4i64 = Register %vreg13
try.c: 0x5615e34a05d0: v16i32 = X86ISD::VBROADCAST 0x5615e34f8b40
try.c: 0x5615e34f8b40: i32,ch = load<LD4[ConstantPool]> 0x5615e3409920, 0x5615e3497fd0, undef:i64
try.c: 0x5615e3497fd0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5615e34a4970: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5615e349ec40: i64 = undef
try.c: 0x5615e34fecc0: 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: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: i32 = Constant<0>
try.c: 0x5615e34feb90: 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:ref