Implementation notes: amd64, cel02, crypto_hash/drygascon256

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: drygascon256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2045763479 0 015206 808 736T:le32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2237306183 0 020453 832 808T:le32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2869866878 0 021173 832 808T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3014402715 0 012632 800 736T:le32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3243385617 0 016596 824 776T:le32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5575084012 0 014765 832 776T:le32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
5585683662 0 015390 808 736T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
8849862879 0 012800 800 736T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
9743942120 0 011872 808 776T:le32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12020862205 0 011960 808 776T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
15792083320 0 014340 824 776T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
19750583209 0 013997 832 776T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:le32
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: 0x55dd9bd10fd0: v4i64 = X86ISD::VTRUNC 0x55dd9bd10ea0
try.c: 0x55dd9bd10ea0: v16i32 = vselect 0x55dd9bd25d30, 0x55dd9bcb3a60, 0x55dd9bd10d70
try.c: 0x55dd9bd25d30: v4i1 = X86ISD::PCMPGTM 0x55dd9bd0c9b0, 0x55dd9bd08540
try.c: 0x55dd9bd0c9b0: v4i64 = X86ISD::VBROADCAST 0x55dd9bcb6230
try.c: 0x55dd9bcb6230: i64,ch = load<LD8[%lsr.iv6971]> 0x55dd9bc1d9a0, 0x55dd9bcf4c70, undef:i64
try.c: 0x55dd9bcf4c70: i64,ch = CopyFromReg 0x55dd9bc1d9a0, Register:i64 %vreg50
try.c: 0x55dd9bd087a0: i64 = Register %vreg50
try.c: 0x55dd9bcb7700: i64 = undef
try.c: 0x55dd9bd08540: v4i64,ch = CopyFromReg 0x55dd9bc1d9a0, Register:v4i64 %vreg13
try.c: 0x55dd9bd0d200: v4i64 = Register %vreg13
try.c: 0x55dd9bcb3a60: v16i32 = X86ISD::VBROADCAST 0x55dd9bd0cc10
try.c: 0x55dd9bd0cc10: i32,ch = load<LD4[ConstantPool]> 0x55dd9bc1d9a0, 0x55dd9bcae990, undef:i64
try.c: 0x55dd9bcae990: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55dd9bcfb510: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55dd9bcb7700: i64 = undef
try.c: 0x55dd9bd10d70: 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: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: i32 = Constant<0>
try.c: 0x55dd9bd10c40: 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:le32

Compiler output

Implementation: T:le32
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: 0x55e9284dafd0: v4i64 = X86ISD::VTRUNC 0x55e9284daea0
try.c: 0x55e9284daea0: v16i32 = vselect 0x55e9284c1460, 0x55e9284535f0, 0x55e9284dad70
try.c: 0x55e9284c1460: v4i1 = X86ISD::PCMPGTM 0x55e9284b67b0, 0x55e9284b2340
try.c: 0x55e9284b67b0: v4i64 = X86ISD::VBROADCAST 0x55e928453ab0
try.c: 0x55e928453ab0: i64,ch = load<LD8[%lsr.iv6971]> 0x55e9283b0a30, 0x55e928449760, undef:i64
try.c: 0x55e928449760: i64,ch = CopyFromReg 0x55e9283b0a30, Register:i64 %vreg50
try.c: 0x55e9284b25a0: i64 = Register %vreg50
try.c: 0x55e9284643f0: i64 = undef
try.c: 0x55e9284b2340: v4i64,ch = CopyFromReg 0x55e9283b0a30, Register:v4i64 %vreg13
try.c: 0x55e9284b7000: v4i64 = Register %vreg13
try.c: 0x55e9284535f0: v16i32 = X86ISD::VBROADCAST 0x55e9284b6a10
try.c: 0x55e9284b6a10: i32,ch = load<LD4[ConstantPool]> 0x55e9283b0a30, 0x55e928466e60, undef:i64
try.c: 0x55e928466e60: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55e928464d70: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55e9284643f0: i64 = undef
try.c: 0x55e9284dad70: 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: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: i32 = Constant<0>
try.c: 0x55e9284dac40: 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:le32

Compiler output

Implementation: T:le32
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: 0x56108d6e9500: v4i64 = X86ISD::VTRUNC 0x56108d6e93d0
try.c: 0x56108d6e93d0: v16i32 = vselect 0x56108d6e5ee0, 0x56108d68a920, 0x56108d6e92a0
try.c: 0x56108d6e5ee0: v4i1 = X86ISD::PCMPGTM 0x56108d6dd250, 0x56108d6d8de0
try.c: 0x56108d6dd250: v4i64 = X86ISD::VBROADCAST 0x56108d680d40
try.c: 0x56108d680d40: i64,ch = load<LD8[%lsr.iv6971]> 0x56108d5ee950, 0x56108d6c6c30, undef:i64
try.c: 0x56108d6c6c30: i64,ch = CopyFromReg 0x56108d5ee950, Register:i64 %vreg50
try.c: 0x56108d6d9040: i64 = Register %vreg50
try.c: 0x56108d688f90: i64 = undef
try.c: 0x56108d6d8de0: v4i64,ch = CopyFromReg 0x56108d5ee950, Register:v4i64 %vreg13
try.c: 0x56108d6ddaa0: v4i64 = Register %vreg13
try.c: 0x56108d68a920: v16i32 = X86ISD::VBROADCAST 0x56108d6dd4b0
try.c: 0x56108d6dd4b0: i32,ch = load<LD4[ConstantPool]> 0x56108d5ee950, 0x56108d680320, undef:i64
try.c: 0x56108d680320: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56108d68c9e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56108d688f90: i64 = undef
try.c: 0x56108d6e92a0: 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: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: i32 = Constant<0>
try.c: 0x56108d6e9170: 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:le32

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: 0x55a9a7bf79f0: v4i64 = X86ISD::VTRUNC 0x55a9a7bf78c0
try.c: 0x55a9a7bf78c0: v16i32 = vselect 0x55a9a7bf43d0, 0x55a9a7b7bcf0, 0x55a9a7bf7790
try.c: 0x55a9a7bf43d0: v4i1 = X86ISD::PCMPGTM 0x55a9a7bd4a40, 0x55a9a7bd05d0
try.c: 0x55a9a7bd4a40: v4i64 = X86ISD::VBROADCAST 0x55a9a7b8f360
try.c: 0x55a9a7b8f360: i64,ch = load<LD8[%lsr.iv6971]> 0x55a9a7ae5950, 0x55a9a7bc3e70, undef:i64
try.c: 0x55a9a7bc3e70: i64,ch = CopyFromReg 0x55a9a7ae5950, Register:i64 %vreg50
try.c: 0x55a9a7bd0830: i64 = Register %vreg50
try.c: 0x55a9a7b90830: i64 = undef
try.c: 0x55a9a7bd05d0: v4i64,ch = CopyFromReg 0x55a9a7ae5950, Register:v4i64 %vreg13
try.c: 0x55a9a7bd5290: v4i64 = Register %vreg13
try.c: 0x55a9a7b7bcf0: v16i32 = X86ISD::VBROADCAST 0x55a9a7bd4ca0
try.c: 0x55a9a7bd4ca0: i32,ch = load<LD4[ConstantPool]> 0x55a9a7ae5950, 0x55a9a7b8e940, undef:i64
try.c: 0x55a9a7b8e940: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a9a7b74180: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a9a7b90830: i64 = undef
try.c: 0x55a9a7bf7790: 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: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: i32 = Constant<0>
try.c: 0x55a9a7bf7660: 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: 0x563668851d50: v4i64 = X86ISD::VTRUNC 0x563668851c20
try.c: 0x563668851c20: v16i32 = vselect 0x56366884c720, 0x5636687db080, 0x563668851af0
try.c: 0x56366884c720: v4i1 = X86ISD::PCMPGTM 0x563668837550, 0x563668833ae0
try.c: 0x563668837550: v4i64 = X86ISD::VBROADCAST 0x5636687db540
try.c: 0x5636687db540: i64,ch = load<LD8[%lsr.iv6971]> 0x563668731a30, 0x5636687d2d00, undef:i64
try.c: 0x5636687d2d00: i64,ch = CopyFromReg 0x563668731a30, Register:i64 %vreg50
try.c: 0x563668833d40: i64 = Register %vreg50
try.c: 0x5636687c5490: i64 = undef
try.c: 0x563668833ae0: v4i64,ch = CopyFromReg 0x563668731a30, Register:v4i64 %vreg13
try.c: 0x563668837da0: v4i64 = Register %vreg13
try.c: 0x5636687db080: v16i32 = X86ISD::VBROADCAST 0x5636688377b0
try.c: 0x5636688377b0: i32,ch = load<LD4[ConstantPool]> 0x563668731a30, 0x5636687cca90, undef:i64
try.c: 0x5636687cca90: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5636687c5e10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5636687c5490: i64 = undef
try.c: 0x563668851af0: 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: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: i32 = Constant<0>
try.c: 0x5636688519c0: 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: 0x55747df3dba0: v4i64 = X86ISD::VTRUNC 0x55747df3da70
try.c: 0x55747df3da70: v16i32 = vselect 0x55747df2ea40, 0x55747dec3980, 0x55747df3d940
try.c: 0x55747df2ea40: v4i1 = X86ISD::PCMPGTM 0x55747df23da0, 0x55747df1f930
try.c: 0x55747df23da0: v4i64 = X86ISD::VBROADCAST 0x55747dec6790
try.c: 0x55747dec6790: i64,ch = load<LD8[%lsr.iv6971]> 0x55747de34950, 0x55747df0ab10, undef:i64
try.c: 0x55747df0ab10: i64,ch = CopyFromReg 0x55747de34950, Register:i64 %vreg50
try.c: 0x55747df1fb90: i64 = Register %vreg50
try.c: 0x55747dec7c60: i64 = undef
try.c: 0x55747df1f930: v4i64,ch = CopyFromReg 0x55747de34950, Register:v4i64 %vreg13
try.c: 0x55747df245f0: v4i64 = Register %vreg13
try.c: 0x55747dec3980: v16i32 = X86ISD::VBROADCAST 0x55747df24000
try.c: 0x55747df24000: i32,ch = load<LD4[ConstantPool]> 0x55747de34950, 0x55747deeab20, undef:i64
try.c: 0x55747deeab20: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55747df1b8e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55747dec7c60: i64 = undef
try.c: 0x55747df3d940: 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: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: i32 = Constant<0>
try.c: 0x55747df3d810: 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