Implementation notes: amd64, cel02, crypto_sign/ntrumls401x

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_sign
Primitive: ntrumls401x
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
134928015005 322 416051245 1160 5760T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
137492028951 322 416470077 1184 5856T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
143142615332 322 416453253 1184 5824T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
166078212512 322 416448958 1184 5792T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
251999824916 322 416062987 1168 5760T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
270341815011 322 416452662 1192 5824T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

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: 0x5555b03318f0: v4i64 = X86ISD::VTRUNC 0x5555b03317c0
try.c: 0x5555b03317c0: v16i32 = vselect 0x5555b031da70, 0x5555b02c0c40, 0x5555b0331690
try.c: 0x5555b031da70: v4i1 = X86ISD::PCMPGTM 0x5555b03120c0, 0x5555b030dc50
try.c: 0x5555b03120c0: v4i64 = X86ISD::VBROADCAST 0x5555b02b5c80
try.c: 0x5555b02b5c80: i64,ch = load<LD8[%lsr.iv6971]> 0x5555b0222960, 0x5555b02fc290, undef:i64
try.c: 0x5555b02fc290: i64,ch = CopyFromReg 0x5555b0222960, Register:i64 %vreg50
try.c: 0x5555b030deb0: i64 = Register %vreg50
try.c: 0x5555b02bf2b0: i64 = undef
try.c: 0x5555b030dc50: v4i64,ch = CopyFromReg 0x5555b0222960, Register:v4i64 %vreg13
try.c: 0x5555b0312910: v4i64 = Register %vreg13
try.c: 0x5555b02c0c40: v16i32 = X86ISD::VBROADCAST 0x5555b0312320
try.c: 0x5555b0312320: i32,ch = load<LD4[ConstantPool]> 0x5555b0222960, 0x5555b02b5260, undef:i64
try.c: 0x5555b02b5260: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5555b0301580: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5555b02bf2b0: i64 = undef
try.c: 0x5555b0331690: 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: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: i32 = Constant<0>
try.c: 0x5555b0331560: 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: 0x55a15c8c35e0: v4i64 = X86ISD::VTRUNC 0x55a15c8c34b0
try.c: 0x55a15c8c34b0: v16i32 = vselect 0x55a15c8b2230, 0x55a15c8345f0, 0x55a15c8c3380
try.c: 0x55a15c8b2230: v4i1 = X86ISD::PCMPGTM 0x55a15c89dee0, 0x55a15c89ba00
try.c: 0x55a15c89dee0: v4i64 = X86ISD::VBROADCAST 0x55a15c834ab0
try.c: 0x55a15c834ab0: i64,ch = load<LD8[%lsr.iv6971]> 0x55a15c798a30, 0x55a15c841450, undef:i64
try.c: 0x55a15c841450: i64,ch = CopyFromReg 0x55a15c798a30, Register:i64 %vreg50
try.c: 0x55a15c89bc60: i64 = Register %vreg50
try.c: 0x55a15c839650: i64 = undef
try.c: 0x55a15c89ba00: v4i64,ch = CopyFromReg 0x55a15c798a30, Register:v4i64 %vreg13
try.c: 0x55a15c89e730: v4i64 = Register %vreg13
try.c: 0x55a15c8345f0: v16i32 = X86ISD::VBROADCAST 0x55a15c89e140
try.c: 0x55a15c89e140: i32,ch = load<LD4[ConstantPool]> 0x55a15c798a30, 0x55a15c83fa20, undef:i64
try.c: 0x55a15c83fa20: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55a15c839fd0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55a15c839650: i64 = undef
try.c: 0x55a15c8c3380: 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: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: i32 = Constant<0>
try.c: 0x55a15c8c3250: 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: 0x5609face3250: v4i64 = X86ISD::VTRUNC 0x5609face3120
try.c: 0x5609face3120: v16i32 = vselect 0x5609facc5fc0, 0x5609fac5fcb0, 0x5609face2ff0
try.c: 0x5609facc5fc0: v4i1 = X86ISD::PCMPGTM 0x5609facbf8f0, 0x5609facbb480
try.c: 0x5609facbf8f0: v4i64 = X86ISD::VBROADCAST 0x5609fac66ba0
try.c: 0x5609fac66ba0: i64,ch = load<LD8[%lsr.iv6971]> 0x5609fabd09d0, 0x5609facaad60, undef:i64
try.c: 0x5609facaad60: i64,ch = CopyFromReg 0x5609fabd09d0, Register:i64 %vreg50
try.c: 0x5609facbb6e0: i64 = Register %vreg50
try.c: 0x5609fac68070: i64 = undef
try.c: 0x5609facbb480: v4i64,ch = CopyFromReg 0x5609fabd09d0, Register:v4i64 %vreg13
try.c: 0x5609facc0140: v4i64 = Register %vreg13
try.c: 0x5609fac5fcb0: v16i32 = X86ISD::VBROADCAST 0x5609facbfb50
try.c: 0x5609facbfb50: i32,ch = load<LD4[ConstantPool]> 0x5609fabd09d0, 0x5609fac6a320, undef:i64
try.c: 0x5609fac6a320: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5609faca9440: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5609fac68070: i64 = undef
try.c: 0x5609face2ff0: 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: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: i32 = Constant<0>
try.c: 0x5609face2ec0: 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