Implementation notes: amd64, cel02, crypto_aead/spook128su512v2

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: spook128su512v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
910984860 0 022509 824 960T:hes128c32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
976384860 0 022509 824 960T:hes128c64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1568844283 0 018789 824 896T:hes128c64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1690844283 0 018789 824 896T:hes128c32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1769064020 0 018301 824 896T:hes128c64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1846163870 0 016856 800 896T:hes128c64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1894483870 0 016856 800 896T:hes128c32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2019784020 0 018301 824 896T:hes128c32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7014746763 0 021570 800 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
7906484651 0 017716 792 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
10731006415 0 024109 824 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12040025086 0 019645 824 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12120284749 0 019069 824 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
12960744526 0 017584 800 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:hes128c32
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
shadow_128bit.c: shadow_128bit.c:74:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: a = *x ^ ROT32(*x, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:25: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~
shadow_128bit.c: shadow_128bit.c:74:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: a = *x ^ ROT32(*x, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:36: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~~~~~~
shadow_128bit.c: shadow_128bit.c:75:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: b = *y ^ ROT32(*y, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:25: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~
shadow_128bit.c: shadow_128bit.c:75:12: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: b = *y ^ ROT32(*y, 12);
shadow_128bit.c: ^~~~~~~~~~~~~
shadow_128bit.c: shadow_128bit.c:71:36: note: expanded from macro 'ROT32'
shadow_128bit.c: #define ROT32(x,n) (((x)>>(n))|((x)<<(32-(n))))
shadow_128bit.c: ~~~^ ~~~~~~~~
shadow_128bit.c: shadow_128bit.c:76:11: error: cannot convert between vector values of different size ('row_set' (vector of 4 'uint32_t' values) and 'int')
shadow_128bit.c: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c32
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:hes128c64

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: 0x562ebdfc8bb0: v4i64 = X86ISD::VTRUNC 0x562ebdfc8a80
try.c: 0x562ebdfc8a80: v16i32 = vselect 0x562ebdfc5590, 0x562ebdf60d40, 0x562ebdfc8950
try.c: 0x562ebdfc5590: v4i1 = X86ISD::PCMPGTM 0x562ebdfc0940, 0x562ebdfbc4d0
try.c: 0x562ebdfc0940: v4i64 = X86ISD::VBROADCAST 0x562ebdf699e0
try.c: 0x562ebdf699e0: i64,ch = load<LD8[%lsr.iv6971]> 0x562ebded19d0, 0x562ebdfaaf80, undef:i64
try.c: 0x562ebdfaaf80: i64,ch = CopyFromReg 0x562ebded19d0, Register:i64 %vreg50
try.c: 0x562ebdfbc730: i64 = Register %vreg50
try.c: 0x562ebdf5f3b0: i64 = undef
try.c: 0x562ebdfbc4d0: v4i64,ch = CopyFromReg 0x562ebded19d0, Register:v4i64 %vreg13
try.c: 0x562ebdfc1190: v4i64 = Register %vreg13
try.c: 0x562ebdf60d40: v16i32 = X86ISD::VBROADCAST 0x562ebdfc0ba0
try.c: 0x562ebdfc0ba0: i32,ch = load<LD4[ConstantPool]> 0x562ebded19d0, 0x562ebdf68fc0, undef:i64
try.c: 0x562ebdf68fc0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x562ebdf661e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x562ebdf5f3b0: i64 = undef
try.c: 0x562ebdfc8950: 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: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: i32 = Constant<0>
try.c: 0x562ebdfc8820: 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: 0x556684db5220: v4i64 = X86ISD::VTRUNC 0x556684db50f0
try.c: 0x556684db50f0: v16i32 = vselect 0x556684d98cc0, 0x556684d36080, 0x556684db4fc0
try.c: 0x556684d98cc0: v4i1 = X86ISD::PCMPGTM 0x556684d9d070, 0x556684d99c10
try.c: 0x556684d9d070: v4i64 = X86ISD::VBROADCAST 0x556684d36540
try.c: 0x556684d36540: i64,ch = load<LD8[%lsr.iv6971]> 0x556684c97a30, 0x556684d40660, undef:i64
try.c: 0x556684d40660: i64,ch = CopyFromReg 0x556684c97a30, Register:i64 %vreg50
try.c: 0x556684d99e70: i64 = Register %vreg50
try.c: 0x556684d397c0: i64 = undef
try.c: 0x556684d99c10: v4i64,ch = CopyFromReg 0x556684c97a30, Register:v4i64 %vreg13
try.c: 0x556684d9d8c0: v4i64 = Register %vreg13
try.c: 0x556684d36080: v16i32 = X86ISD::VBROADCAST 0x556684d9d2d0
try.c: 0x556684d9d2d0: i32,ch = load<LD4[ConstantPool]> 0x556684c97a30, 0x556684d337c0, undef:i64
try.c: 0x556684d337c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x556684d3a140: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556684d397c0: i64 = undef
try.c: 0x556684db4fc0: 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: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: i32 = Constant<0>
try.c: 0x556684db4e90: 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: 0x5648e6841f60: v4i64 = X86ISD::VTRUNC 0x5648e6841e30
try.c: 0x5648e6841e30: v16i32 = vselect 0x5648e683a500, 0x5648e67dc4f0, 0x5648e6841d00
try.c: 0x5648e683a500: v4i1 = X86ISD::PCMPGTM 0x5648e6836cd0, 0x5648e6832860
try.c: 0x5648e6836cd0: v4i64 = X86ISD::VBROADCAST 0x5648e67d9690
try.c: 0x5648e67d9690: i64,ch = load<LD8[%lsr.iv6971]> 0x5648e6747960, 0x5648e681c630, undef:i64
try.c: 0x5648e681c630: i64,ch = CopyFromReg 0x5648e6747960, Register:i64 %vreg50
try.c: 0x5648e6832ac0: i64 = Register %vreg50
try.c: 0x5648e67dab60: i64 = undef
try.c: 0x5648e6832860: v4i64,ch = CopyFromReg 0x5648e6747960, Register:v4i64 %vreg13
try.c: 0x5648e6837520: v4i64 = Register %vreg13
try.c: 0x5648e67dc4f0: v16i32 = X86ISD::VBROADCAST 0x5648e6836f30
try.c: 0x5648e6836f30: i32,ch = load<LD4[ConstantPool]> 0x5648e6747960, 0x5648e67dde80, undef:i64
try.c: 0x5648e67dde80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5648e682e810: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5648e67dab60: i64 = undef
try.c: 0x5648e6841d00: 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: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: i32 = Constant<0>
try.c: 0x5648e6841bd0: 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