Implementation notes: amd64, cel02, crypto_hash/shabal256

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: shabal256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
968620634 0 035013 824 808T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
99044113 0 013900 792 736T:amd64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
99084113 0 014700 816 776T:amd64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1099821825 0 033690 800 736T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
133264113 0 013736 800 776T:amd64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
134444113 0 018261 824 808T:amd64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
143064113 0 015730 800 736T:amd64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1456219186 0 030429 824 776T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1513816042 0 025920 800 776T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1541218706 0 029573 824 776T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
158864113 0 015004 816 776T:amd64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2081221558 0 031588 792 736T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:amd64
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: 0x563649291130: v4i64 = X86ISD::VTRUNC 0x563649291000
try.c: 0x563649291000: v16i32 = vselect 0x563649271bf0, 0x5636492301f0, 0x563649290ed0
try.c: 0x563649271bf0: v4i1 = X86ISD::PCMPGTM 0x5636492797d0, 0x563649275360
try.c: 0x5636492797d0: v4i64 = X86ISD::VBROADCAST 0x5636492214d0
try.c: 0x5636492214d0: i64,ch = load<LD8[%lsr.iv6971]> 0x56364918a900, 0x56364926c670, undef:i64
try.c: 0x56364926c670: i64,ch = CopyFromReg 0x56364918a900, Register:i64 %vreg50
try.c: 0x5636492755c0: i64 = Register %vreg50
try.c: 0x5636492229a0: i64 = undef
try.c: 0x563649275360: v4i64,ch = CopyFromReg 0x56364918a900, Register:v4i64 %vreg13
try.c: 0x56364927a020: v4i64 = Register %vreg13
try.c: 0x5636492301f0: v16i32 = X86ISD::VBROADCAST 0x563649279a30
try.c: 0x563649279a30: i32,ch = load<LD4[ConstantPool]> 0x56364918a900, 0x563649225f60, undef:i64
try.c: 0x563649225f60: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5636492648c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5636492229a0: i64 = undef
try.c: 0x563649290ed0: 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: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: i32 = Constant<0>
try.c: 0x563649290da0: 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:amd64

Compiler output

Implementation: T:amd64
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: 0x55bb94a844c0: v4i64 = X86ISD::VTRUNC 0x55bb94a84390
try.c: 0x55bb94a84390: v16i32 = vselect 0x55bb94a72010, 0x55bb949f3fd0, 0x55bb94a84260
try.c: 0x55bb94a72010: v4i1 = X86ISD::PCMPGTM 0x55bb94a60690, 0x55bb94a5c220
try.c: 0x55bb94a60690: v4i64 = X86ISD::VBROADCAST 0x55bb949f4490
try.c: 0x55bb949f4490: i64,ch = load<LD8[%lsr.iv6971]> 0x55bb94959a30, 0x55bb949fc220, undef:i64
try.c: 0x55bb949fc220: i64,ch = CopyFromReg 0x55bb94959a30, Register:i64 %vreg50
try.c: 0x55bb94a5c480: i64 = Register %vreg50
try.c: 0x55bb949f87c0: i64 = undef
try.c: 0x55bb94a5c220: v4i64,ch = CopyFromReg 0x55bb94959a30, Register:v4i64 %vreg13
try.c: 0x55bb94a60ee0: v4i64 = Register %vreg13
try.c: 0x55bb949f3fd0: v16i32 = X86ISD::VBROADCAST 0x55bb94a608f0
try.c: 0x55bb94a608f0: i32,ch = load<LD4[ConstantPool]> 0x55bb94959a30, 0x55bb949fa7f0, undef:i64
try.c: 0x55bb949fa7f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55bb949f9140: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55bb949f87c0: i64 = undef
try.c: 0x55bb94a84260: 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: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: i32 = Constant<0>
try.c: 0x55bb94a84130: 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:amd64

Compiler output

Implementation: T:amd64
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: 0x56430c0de9b0: v4i64 = X86ISD::VTRUNC 0x56430c0de880
try.c: 0x56430c0de880: v16i32 = vselect 0x56430c0dc790, 0x56430c0a4d20, 0x56430c0de750
try.c: 0x56430c0dc790: v4i1 = X86ISD::PCMPGTM 0x56430c0d9770, 0x56430c0d5300
try.c: 0x56430c0d9770: v4i64 = X86ISD::VBROADCAST 0x56430c0a1ec0
try.c: 0x56430c0a1ec0: i64,ch = load<LD8[%lsr.iv6971]> 0x56430bfea950, 0x56430c0c5170, undef:i64
try.c: 0x56430c0c5170: i64,ch = CopyFromReg 0x56430bfea950, Register:i64 %vreg50
try.c: 0x56430c0d5560: i64 = Register %vreg50
try.c: 0x56430c0a3390: i64 = undef
try.c: 0x56430c0d5300: v4i64,ch = CopyFromReg 0x56430bfea950, Register:v4i64 %vreg13
try.c: 0x56430c0d9fc0: v4i64 = Register %vreg13
try.c: 0x56430c0a4d20: v16i32 = X86ISD::VBROADCAST 0x56430c0d99d0
try.c: 0x56430c0d99d0: i32,ch = load<LD4[ConstantPool]> 0x56430bfea950, 0x56430c07acc0, undef:i64
try.c: 0x56430c07acc0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56430c093e60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56430c0a3390: i64 = undef
try.c: 0x56430c0de750: 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: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: i32 = Constant<0>
try.c: 0x56430c0de620: 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:amd64

Compiler output

Implementation: T:sphlib
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: 0x55d77e3b0ff0: v4i64 = X86ISD::VTRUNC 0x55d77e3b0ec0
try.c: 0x55d77e3b0ec0: v16i32 = vselect 0x55d77e3c9f10, 0x55d77e353050, 0x55d77e3b0d90
try.c: 0x55d77e3c9f10: v4i1 = X86ISD::PCMPGTM 0x55d77e3ab9c0, 0x55d77e3a7550
try.c: 0x55d77e3ab9c0: v4i64 = X86ISD::VBROADCAST 0x55d77e3691f0
try.c: 0x55d77e3691f0: i64,ch = load<LD8[%lsr.iv6971]> 0x55d77e2bc950, 0x55d77e39a680, undef:i64
try.c: 0x55d77e39a680: i64,ch = CopyFromReg 0x55d77e2bc950, Register:i64 %vreg50
try.c: 0x55d77e3a77b0: i64 = Register %vreg50
try.c: 0x55d77e36a6c0: i64 = undef
try.c: 0x55d77e3a7550: v4i64,ch = CopyFromReg 0x55d77e2bc950, Register:v4i64 %vreg13
try.c: 0x55d77e3ac210: v4i64 = Register %vreg13
try.c: 0x55d77e353050: v16i32 = X86ISD::VBROADCAST 0x55d77e3abc20
try.c: 0x55d77e3abc20: i32,ch = load<LD4[ConstantPool]> 0x55d77e2bc950, 0x55d77e350670, undef:i64
try.c: 0x55d77e350670: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d77e34df60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d77e36a6c0: i64 = undef
try.c: 0x55d77e3b0d90: 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: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: i32 = Constant<0>
try.c: 0x55d77e3b0c60: 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:sphlib

Compiler output

Implementation: T:sphlib
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: 0x5598da2a98a0: v4i64 = X86ISD::VTRUNC 0x5598da2a9770
try.c: 0x5598da2a9770: v16i32 = vselect 0x5598da298840, 0x5598da21fcd0, 0x5598da2a9640
try.c: 0x5598da298840: v4i1 = X86ISD::PCMPGTM 0x5598da283670, 0x5598da27f440
try.c: 0x5598da283670: v4i64 = X86ISD::VBROADCAST 0x5598da220190
try.c: 0x5598da220190: i64,ch = load<LD8[%lsr.iv6971]> 0x5598da17da30, 0x5598da219240, undef:i64
try.c: 0x5598da219240: i64,ch = CopyFromReg 0x5598da17da30, Register:i64 %vreg50
try.c: 0x5598da27f6a0: i64 = Register %vreg50
try.c: 0x5598da21bd50: i64 = undef
try.c: 0x5598da27f440: v4i64,ch = CopyFromReg 0x5598da17da30, Register:v4i64 %vreg13
try.c: 0x5598da283ec0: v4i64 = Register %vreg13
try.c: 0x5598da21fcd0: v16i32 = X86ISD::VBROADCAST 0x5598da2838d0
try.c: 0x5598da2838d0: i32,ch = load<LD4[ConstantPool]> 0x5598da17da30, 0x5598da22e2c0, undef:i64
try.c: 0x5598da22e2c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5598da21c6d0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5598da21bd50: i64 = undef
try.c: 0x5598da2a9640: 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: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: i32 = Constant<0>
try.c: 0x5598da2a9510: 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:sphlib

Compiler output

Implementation: T:sphlib
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: 0x55dfd621e9b0: v4i64 = X86ISD::VTRUNC 0x55dfd621e880
try.c: 0x55dfd621e880: v16i32 = vselect 0x55dfd621c790, 0x55dfd61e4d20, 0x55dfd621e750
try.c: 0x55dfd621c790: v4i1 = X86ISD::PCMPGTM 0x55dfd6219770, 0x55dfd6215300
try.c: 0x55dfd6219770: v4i64 = X86ISD::VBROADCAST 0x55dfd61e1ec0
try.c: 0x55dfd61e1ec0: i64,ch = load<LD8[%lsr.iv6971]> 0x55dfd612a950, 0x55dfd6205170, undef:i64
try.c: 0x55dfd6205170: i64,ch = CopyFromReg 0x55dfd612a950, Register:i64 %vreg50
try.c: 0x55dfd6215560: i64 = Register %vreg50
try.c: 0x55dfd61e3390: i64 = undef
try.c: 0x55dfd6215300: v4i64,ch = CopyFromReg 0x55dfd612a950, Register:v4i64 %vreg13
try.c: 0x55dfd6219fc0: v4i64 = Register %vreg13
try.c: 0x55dfd61e4d20: v16i32 = X86ISD::VBROADCAST 0x55dfd62199d0
try.c: 0x55dfd62199d0: i32,ch = load<LD4[ConstantPool]> 0x55dfd612a950, 0x55dfd61bacc0, undef:i64
try.c: 0x55dfd61bacc0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55dfd61d3e60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55dfd61e3390: i64 = undef
try.c: 0x55dfd621e750: 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: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: i32 = Constant<0>
try.c: 0x55dfd621e620: 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:sphlib