Implementation notes: amd64, cel02, crypto_hash/md5

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_hash
Primitive: md5
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
808073 0 09788 808 776opensslgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
808470 0 09956 800 736opensslclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
808679 0 010768 824 776opensslgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
809070 0 011802 808 736opensslclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
8394533 0 012676 792 736refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
8484613 0 013852 816 776refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8588532 0 014506 800 736refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
867276 0 014329 832 808opensslgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
867876 0 011072 824 776opensslgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8792641 0 013540 816 776refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
8800558 0 012488 800 776refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9102684 0 017157 824 808refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: openssl
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: 0x55b4f73fe140: v4i64 = X86ISD::VTRUNC 0x55b4f73fe010
try.c: 0x55b4f73fe010: v16i32 = vselect 0x55b4f74067d0, 0x55b4f7387000, 0x55b4f73fdee0
try.c: 0x55b4f74067d0: v4i1 = X86ISD::PCMPGTM 0x55b4f73e3970, 0x55b4f73df500
try.c: 0x55b4f73e3970: v4i64 = X86ISD::VBROADCAST 0x55b4f73a91b0
try.c: 0x55b4f73a91b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55b4f72f4950, 0x55b4f739dcb0, undef:i64
try.c: 0x55b4f739dcb0: i64,ch = CopyFromReg 0x55b4f72f4950, Register:i64 %vreg50
try.c: 0x55b4f73df760: i64 = Register %vreg50
try.c: 0x55b4f73aa680: i64 = undef
try.c: 0x55b4f73df500: v4i64,ch = CopyFromReg 0x55b4f72f4950, Register:v4i64 %vreg13
try.c: 0x55b4f73e41c0: v4i64 = Register %vreg13
try.c: 0x55b4f7387000: v16i32 = X86ISD::VBROADCAST 0x55b4f73e3bd0
try.c: 0x55b4f73e3bd0: i32,ch = load<LD4[ConstantPool]> 0x55b4f72f4950, 0x55b4f738de50, undef:i64
try.c: 0x55b4f738de50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55b4f73c3ed0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55b4f73aa680: i64 = undef
try.c: 0x55b4f73fdee0: 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: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: i32 = Constant<0>
try.c: 0x55b4f73fddb0: 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 openssl

Compiler output

Implementation: openssl
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: 0x5573007fa760: v4i64 = X86ISD::VTRUNC 0x5573007fa630
try.c: 0x5573007fa630: v16i32 = vselect 0x5573007f38e0, 0x5573007840e0, 0x5573007fa500
try.c: 0x5573007f38e0: v4i1 = X86ISD::PCMPGTM 0x5573007d4d30, 0x5573007d02b0
try.c: 0x5573007d4d30: v4i64 = X86ISD::VBROADCAST 0x5573007845a0
try.c: 0x5573007845a0: i64,ch = load<LD8[%lsr.iv6971]> 0x5573006cea30, 0x557300772150, undef:i64
try.c: 0x557300772150: i64,ch = CopyFromReg 0x5573006cea30, Register:i64 %vreg50
try.c: 0x5573007d0510: i64 = Register %vreg50
try.c: 0x5573007780c0: i64 = undef
try.c: 0x5573007d02b0: v4i64,ch = CopyFromReg 0x5573006cea30, Register:v4i64 %vreg13
try.c: 0x5573007d5580: v4i64 = Register %vreg13
try.c: 0x5573007840e0: v16i32 = X86ISD::VBROADCAST 0x5573007d4f90
try.c: 0x5573007d4f90: i32,ch = load<LD4[ConstantPool]> 0x5573006cea30, 0x557300770720, undef:i64
try.c: 0x557300770720: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x557300778a40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5573007780c0: i64 = undef
try.c: 0x5573007fa500: 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: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: i32 = Constant<0>
try.c: 0x5573007fa3d0: 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 openssl

Compiler output

Implementation: openssl
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: 0x5640a04d12a0: v4i64 = X86ISD::VTRUNC 0x5640a04d1170
try.c: 0x5640a04d1170: v16i32 = vselect 0x5640a04e2410, 0x5640a0483910, 0x5640a04d1040
try.c: 0x5640a04e2410: v4i1 = X86ISD::PCMPGTM 0x5640a04c9090, 0x5640a04c4c20
try.c: 0x5640a04c9090: v4i64 = X86ISD::VBROADCAST 0x5640a04706b0
try.c: 0x5640a04706b0: i64,ch = load<LD8[%lsr.iv6971]> 0x5640a03d9970, 0x5640a048f3d0, undef:i64
try.c: 0x5640a048f3d0: i64,ch = CopyFromReg 0x5640a03d9970, Register:i64 %vreg50
try.c: 0x5640a04c4e80: i64 = Register %vreg50
try.c: 0x5640a0471b80: i64 = undef
try.c: 0x5640a04c4c20: v4i64,ch = CopyFromReg 0x5640a03d9970, Register:v4i64 %vreg13
try.c: 0x5640a04c98e0: v4i64 = Register %vreg13
try.c: 0x5640a0483910: v16i32 = X86ISD::VBROADCAST 0x5640a04c92f0
try.c: 0x5640a04c92f0: i32,ch = load<LD4[ConstantPool]> 0x5640a03d9970, 0x5640a0466a80, undef:i64
try.c: 0x5640a0466a80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5640a04afb10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5640a0471b80: i64 = undef
try.c: 0x5640a04d1040: 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: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: i32 = Constant<0>
try.c: 0x5640a04d0f10: 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 openssl

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: 0x561aecc08c30: v4i64 = X86ISD::VTRUNC 0x561aecc08b00
try.c: 0x561aecc08b00: v16i32 = vselect 0x561aecc1a550, 0x561aecba3f70, 0x561aecc089d0
try.c: 0x561aecc1a550: v4i1 = X86ISD::PCMPGTM 0x561aecbff9c0, 0x561aecbfb550
try.c: 0x561aecbff9c0: v4i64 = X86ISD::VBROADCAST 0x561aecbc8d40
try.c: 0x561aecbc8d40: i64,ch = load<LD8[%lsr.iv6971]> 0x561aecb10950, 0x561aecbf2140, undef:i64
try.c: 0x561aecbf2140: i64,ch = CopyFromReg 0x561aecb10950, Register:i64 %vreg50
try.c: 0x561aecbfb7b0: i64 = Register %vreg50
try.c: 0x561aecba25e0: i64 = undef
try.c: 0x561aecbfb550: v4i64,ch = CopyFromReg 0x561aecb10950, Register:v4i64 %vreg13
try.c: 0x561aecc00210: v4i64 = Register %vreg13
try.c: 0x561aecba3f70: v16i32 = X86ISD::VBROADCAST 0x561aecbffc20
try.c: 0x561aecbffc20: i32,ch = load<LD4[ConstantPool]> 0x561aecb10950, 0x561aecbc8320, undef:i64
try.c: 0x561aecbc8320: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x561aecbe87e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x561aecba25e0: i64 = undef
try.c: 0x561aecc089d0: 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: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: i32 = Constant<0>
try.c: 0x561aecc088a0: 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: 0x5645729444d0: v4i64 = X86ISD::VTRUNC 0x5645729443a0
try.c: 0x5645729443a0: v16i32 = vselect 0x56457293d4f0, 0x5645728c0280, 0x564572944270
try.c: 0x56457293d4f0: v4i1 = X86ISD::PCMPGTM 0x56457291f190, 0x56457291b320
try.c: 0x56457291f190: v4i64 = X86ISD::VBROADCAST 0x5645728c0740
try.c: 0x5645728c0740: i64,ch = load<LD8[%lsr.iv6971]> 0x564572818a30, 0x5645728ca3e0, undef:i64
try.c: 0x5645728ca3e0: i64,ch = CopyFromReg 0x564572818a30, Register:i64 %vreg50
try.c: 0x56457291b580: i64 = Register %vreg50
try.c: 0x5645728b3210: i64 = undef
try.c: 0x56457291b320: v4i64,ch = CopyFromReg 0x564572818a30, Register:v4i64 %vreg13
try.c: 0x56457291f9e0: v4i64 = Register %vreg13
try.c: 0x5645728c0280: v16i32 = X86ISD::VBROADCAST 0x56457291f3f0
try.c: 0x56457291f3f0: i32,ch = load<LD4[ConstantPool]> 0x564572818a30, 0x5645728c89b0, undef:i64
try.c: 0x5645728c89b0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5645728b3b90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5645728b3210: i64 = undef
try.c: 0x564572944270: 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: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: i32 = Constant<0>
try.c: 0x564572944140: 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: 0x560c1f58a0e0: v4i64 = X86ISD::VTRUNC 0x560c1f589fb0
try.c: 0x560c1f589fb0: v16i32 = vselect 0x560c1f587ec0, 0x560c1f535000, 0x560c1f589e80
try.c: 0x560c1f587ec0: v4i1 = X86ISD::PCMPGTM 0x560c1f584ea0, 0x560c1f580a30
try.c: 0x560c1f584ea0: v4i64 = X86ISD::VBROADCAST 0x560c1f5321a0
try.c: 0x560c1f5321a0: i64,ch = load<LD8[%lsr.iv6971]> 0x560c1f495910, 0x560c1f5773b0, undef:i64
try.c: 0x560c1f5773b0: i64,ch = CopyFromReg 0x560c1f495910, Register:i64 %vreg50
try.c: 0x560c1f580c90: i64 = Register %vreg50
try.c: 0x560c1f533670: i64 = undef
try.c: 0x560c1f580a30: v4i64,ch = CopyFromReg 0x560c1f495910, Register:v4i64 %vreg13
try.c: 0x560c1f5856f0: v4i64 = Register %vreg13
try.c: 0x560c1f535000: v16i32 = X86ISD::VBROADCAST 0x560c1f585100
try.c: 0x560c1f585100: i32,ch = load<LD4[ConstantPool]> 0x560c1f495910, 0x560c1f531780, undef:i64
try.c: 0x560c1f531780: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x560c1f5694c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560c1f533670: i64 = undef
try.c: 0x560c1f589e80: 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: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: i32 = Constant<0>
try.c: 0x560c1f589d50: 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