Implementation notes: amd64, cel02, crypto_sign/rainbowbinary256181212

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_sign
Primitive: rainbowbinary256181212
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
10875234059 112 823265377 1016 9992T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
11084632618 112 823260777 1016 9928T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
11808833153 176 823259486 1048 9832T:refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
12588034636 112 823262417 1016 9928T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
17930426845 112 823253904 1016 9896T:refg++_-march=native_-mtune=native_-Os_-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
rainbow-test.cpp: In file included from rainbow-test.cpp:1:
rainbow-test.cpp: ./gf.h:171:46: warning: while loop has empty body [-Wempty-body]
rainbow-test.cpp: if( M==n_read ) { while( ttt.set(fp)==16 ) ; break; }
rainbow-test.cpp: ^
rainbow-test.cpp: ./gf.h:171:46: note: put the semicolon on a separate line to silence this warning
rainbow-test.cpp: 1 warning generated.
try.cpp: fatal error: error in backend: Cannot select: 0x5576868fefb0: v4i64 = X86ISD::VTRUNC 0x5576868fee80
try.cpp: 0x5576868fee80: v16i32 = vselect 0x557686909b30, 0x5576868a0d60, 0x5576868fed50
try.cpp: 0x557686909b30: v4i1 = X86ISD::PCMPGTM 0x5576868e8670, 0x5576868e4200
try.cpp: 0x5576868e8670: v4i64 = X86ISD::VBROADCAST 0x55768688a810
try.cpp: 0x55768688a810: i64,ch = load<LD8[%lsr.iv6971]> 0x5576867f7a60, 0x5576868d1630, undef:i64
try.cpp: 0x5576868d1630: i64,ch = CopyFromReg 0x5576867f7a60, Register:i64 %vreg50
try.cpp: 0x5576868e4460: i64 = Register %vreg50
try.cpp: 0x55768688bce0: i64 = undef
try.cpp: 0x5576868e4200: v4i64,ch = CopyFromReg 0x5576867f7a60, Register:v4i64 %vreg13
try.cpp: 0x5576868e8ec0: v4i64 = Register %vreg13
try.cpp: 0x5576868a0d60: v16i32 = X86ISD::VBROADCAST 0x5576868e88d0
try.cpp: 0x5576868e88d0: i32,ch = load<LD4[ConstantPool]> 0x5576867f7a60, 0x557686890670, undef:i64
try.cpp: 0x557686890670: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5576868d2830: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55768688bce0: i64 = undef
try.cpp: 0x5576868fed50: 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.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: 0x5576868fec20: i32 = Constant<0>
try.cpp: ...

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
rainbow-test.cpp: In file included from rainbow-test.cpp:1:
rainbow-test.cpp: ./gf.h:171:46: warning: while loop has empty body [-Wempty-body]
rainbow-test.cpp: if( M==n_read ) { while( ttt.set(fp)==16 ) ; break; }
rainbow-test.cpp: ^
rainbow-test.cpp: ./gf.h:171:46: note: put the semicolon on a separate line to silence this warning
rainbow-test.cpp: 1 warning generated.
try.cpp: fatal error: error in backend: Cannot select: 0x55f6c284db50: v4i64 = X86ISD::VTRUNC 0x55f6c284da20
try.cpp: 0x55f6c284da20: v16i32 = vselect 0x55f6c2839b60, 0x55f6c27f5500, 0x55f6c284d8f0
try.cpp: 0x55f6c2839b60: v4i1 = X86ISD::PCMPGTM 0x55f6c2834360, 0x55f6c28308f0
try.cpp: 0x55f6c2834360: v4i64 = X86ISD::VBROADCAST 0x55f6c27f59c0
try.cpp: 0x55f6c27f59c0: i64,ch = load<LD8[%lsr.iv6971]> 0x55f6c272dab0, 0x55f6c27cf500, undef:i64
try.cpp: 0x55f6c27cf500: i64,ch = CopyFromReg 0x55f6c272dab0, Register:i64 %vreg50
try.cpp: 0x55f6c2830b50: i64 = Register %vreg50
try.cpp: 0x55f6c27d1ee0: i64 = undef
try.cpp: 0x55f6c28308f0: v4i64,ch = CopyFromReg 0x55f6c272dab0, Register:v4i64 %vreg13
try.cpp: 0x55f6c2834bb0: v4i64 = Register %vreg13
try.cpp: 0x55f6c27f5500: v16i32 = X86ISD::VBROADCAST 0x55f6c28345c0
try.cpp: 0x55f6c28345c0: i32,ch = load<LD4[ConstantPool]> 0x55f6c272dab0, 0x55f6c27d9350, undef:i64
try.cpp: 0x55f6c27d9350: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55f6c27d2860: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55f6c27d1ee0: i64 = undef
try.cpp: 0x55f6c284d8f0: 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.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: 0x55f6c284d7c0: i32 = Constant<0>
try.cpp: ...

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
rainbow-test.cpp: In file included from rainbow-test.cpp:1:
rainbow-test.cpp: ./gf.h:171:46: warning: while loop has empty body [-Wempty-body]
rainbow-test.cpp: if( M==n_read ) { while( ttt.set(fp)==16 ) ; break; }
rainbow-test.cpp: ^
rainbow-test.cpp: ./gf.h:171:46: note: put the semicolon on a separate line to silence this warning
rainbow-test.cpp: 1 warning generated.
try.cpp: fatal error: error in backend: Cannot select: 0x56445a42ff00: v4i64 = X86ISD::VTRUNC 0x56445a42fdd0
try.cpp: 0x56445a42fdd0: v16i32 = vselect 0x56445a43c130, 0x56445a3b8f00, 0x56445a42fca0
try.cpp: 0x56445a43c130: v4i1 = X86ISD::PCMPGTM 0x56445a4195c0, 0x56445a415150
try.cpp: 0x56445a4195c0: v4i64 = X86ISD::VBROADCAST 0x56445a3dec10
try.cpp: 0x56445a3dec10: i64,ch = load<LD8[%lsr.iv6971]> 0x56445a3289e0, 0x56445a40ffb0, undef:i64
try.cpp: 0x56445a40ffb0: i64,ch = CopyFromReg 0x56445a3289e0, Register:i64 %vreg50
try.cpp: 0x56445a4153b0: i64 = Register %vreg50
try.cpp: 0x56445a3b7570: i64 = undef
try.cpp: 0x56445a415150: v4i64,ch = CopyFromReg 0x56445a3289e0, Register:v4i64 %vreg13
try.cpp: 0x56445a419e10: v4i64 = Register %vreg13
try.cpp: 0x56445a3b8f00: v16i32 = X86ISD::VBROADCAST 0x56445a419820
try.cpp: 0x56445a419820: i32,ch = load<LD4[ConstantPool]> 0x56445a3289e0, 0x56445a3de1f0, undef:i64
try.cpp: 0x56445a3de1f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x56445a3d9a80: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x56445a3b7570: i64 = undef
try.cpp: 0x56445a42fca0: 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.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: 0x56445a42fb70: i32 = Constant<0>
try.cpp: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rainbow-test.cpp: In file included from rainbow-test.cpp:1:
rainbow-test.cpp: ./gf.h:171:46: warning: while loop has empty body [-Wempty-body]
rainbow-test.cpp: if( M==n_read ) { while( ttt.set(fp)==16 ) ; break; }
rainbow-test.cpp: ^
rainbow-test.cpp: ./gf.h:171:46: note: put the semicolon on a separate line to silence this warning
rainbow-test.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref