Implementation notes: amd64, cel02, crypto_encode/int32

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_encode
Primitive: int32
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2675 0 013733 824 800refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2875 0 010196 816 768refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2875 0 09288 800 768refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3070 0 09412 792 728refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3470 0 011274 800 728refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3675 0 010444 816 768refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

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: 0x55cd83b97410: v4i64 = X86ISD::VTRUNC 0x55cd83b972e0
try.c: 0x55cd83b972e0: v16i32 = vselect 0x55cd83bace00, 0x55cd83b36b90, 0x55cd83b971b0
try.c: 0x55cd83bace00: v4i1 = X86ISD::PCMPGTM 0x55cd83b91de0, 0x55cd83b8e580
try.c: 0x55cd83b91de0: v4i64 = X86ISD::VBROADCAST 0x55cd83b3c2c0
try.c: 0x55cd83b3c2c0: i64,ch = load<LD8[%lsr.iv6971]> 0x55cd83aa2940, 0x55cd83b74930, undef:i64
try.c: 0x55cd83b74930: i64,ch = CopyFromReg 0x55cd83aa2940, Register:i64 %vreg50
try.c: 0x55cd83b8e7e0: i64 = Register %vreg50
try.c: 0x55cd83b35200: i64 = undef
try.c: 0x55cd83b8e580: v4i64,ch = CopyFromReg 0x55cd83aa2940, Register:v4i64 %vreg13
try.c: 0x55cd83b92630: v4i64 = Register %vreg13
try.c: 0x55cd83b36b90: v16i32 = X86ISD::VBROADCAST 0x55cd83b92040
try.c: 0x55cd83b92040: i32,ch = load<LD4[ConstantPool]> 0x55cd83aa2940, 0x55cd83b3b8a0, undef:i64
try.c: 0x55cd83b3b8a0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55cd83b89920: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55cd83b35200: i64 = undef
try.c: 0x55cd83b971b0: 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: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: i32 = Constant<0>
try.c: 0x55cd83b97080: 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: 0x5628a09872e0: v4i64 = X86ISD::VTRUNC 0x5628a09871b0
try.c: 0x5628a09871b0: v16i32 = vselect 0x5628a0964f70, 0x5628a090af90, 0x5628a0987080
try.c: 0x5628a0964f70: v4i1 = X86ISD::PCMPGTM 0x5628a0961f50, 0x5628a095dae0
try.c: 0x5628a0961f50: v4i64 = X86ISD::VBROADCAST 0x5628a090b450
try.c: 0x5628a090b450: i64,ch = load<LD8[%lsr.iv6971]> 0x5628a085ba30, 0x5628a08fe8a0, undef:i64
try.c: 0x5628a08fe8a0: i64,ch = CopyFromReg 0x5628a085ba30, Register:i64 %vreg50
try.c: 0x5628a095dd40: i64 = Register %vreg50
try.c: 0x5628a08f9110: i64 = undef
try.c: 0x5628a095dae0: v4i64,ch = CopyFromReg 0x5628a085ba30, Register:v4i64 %vreg13
try.c: 0x5628a09627a0: v4i64 = Register %vreg13
try.c: 0x5628a090af90: v16i32 = X86ISD::VBROADCAST 0x5628a09621b0
try.c: 0x5628a09621b0: i32,ch = load<LD4[ConstantPool]> 0x5628a085ba30, 0x5628a08fce70, undef:i64
try.c: 0x5628a08fce70: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5628a08f9a90: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5628a08f9110: i64 = undef
try.c: 0x5628a0987080: 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: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: i32 = Constant<0>
try.c: 0x5628a0986f50: 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: 0x55fcca3155b0: v4i64 = X86ISD::VTRUNC 0x55fcca315480
try.c: 0x55fcca315480: v16i32 = vselect 0x55fcca326c60, 0x55fcca2b4700, 0x55fcca315350
try.c: 0x55fcca326c60: v4i1 = X86ISD::PCMPGTM 0x55fcca30d8e0, 0x55fcca309470
try.c: 0x55fcca30d8e0: v4i64 = X86ISD::VBROADCAST 0x55fcca2c7f40
try.c: 0x55fcca2c7f40: i64,ch = load<LD8[%lsr.iv6971]> 0x55fcca21e950, 0x55fcca2f7ad0, undef:i64
try.c: 0x55fcca2f7ad0: i64,ch = CopyFromReg 0x55fcca21e950, Register:i64 %vreg50
try.c: 0x55fcca3096d0: i64 = Register %vreg50
try.c: 0x55fcca2c9410: i64 = undef
try.c: 0x55fcca309470: v4i64,ch = CopyFromReg 0x55fcca21e950, Register:v4i64 %vreg13
try.c: 0x55fcca30e130: v4i64 = Register %vreg13
try.c: 0x55fcca2b4700: v16i32 = X86ISD::VBROADCAST 0x55fcca30db40
try.c: 0x55fcca30db40: i32,ch = load<LD4[ConstantPool]> 0x55fcca21e950, 0x55fcca2c7520, undef:i64
try.c: 0x55fcca2c7520: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55fcca2f8cd0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55fcca2c9410: i64 = undef
try.c: 0x55fcca315350: 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: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: i32 = Constant<0>
try.c: 0x55fcca315220: 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