Implementation notes: amd64, cel02, crypto_aead/fountain128v1

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: fountain128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
49564107468 64 025375 904 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
708186010487 64 025426 872 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
327679904220 64 017352 872 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
339423286338 64 019428 864 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
358410345220 64 019532 888 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
367742345553 64 020108 888 896T:refgcc_-march=native_-mtune=native_-O2_-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: 0x55e1c51e3c40: v4i64 = X86ISD::VTRUNC 0x55e1c51e3b10
try.c: 0x55e1c51e3b10: v16i32 = vselect 0x55e1c51e0620, 0x55e1c5183920, 0x55e1c51e39e0
try.c: 0x55e1c51e0620: v4i1 = X86ISD::PCMPGTM 0x55e1c51db9d0, 0x55e1c51d7560
try.c: 0x55e1c51db9d0: v4i64 = X86ISD::VBROADCAST 0x55e1c517fb10
try.c: 0x55e1c517fb10: i64,ch = load<LD8[%lsr.iv6971]> 0x55e1c50ec950, 0x55e1c51c5d50, undef:i64
try.c: 0x55e1c51c5d50: i64,ch = CopyFromReg 0x55e1c50ec950, Register:i64 %vreg50
try.c: 0x55e1c51d77c0: i64 = Register %vreg50
try.c: 0x55e1c5181f90: i64 = undef
try.c: 0x55e1c51d7560: v4i64,ch = CopyFromReg 0x55e1c50ec950, Register:v4i64 %vreg13
try.c: 0x55e1c51dc220: v4i64 = Register %vreg13
try.c: 0x55e1c5183920: v16i32 = X86ISD::VBROADCAST 0x55e1c51dbc30
try.c: 0x55e1c51dbc30: i32,ch = load<LD4[ConstantPool]> 0x55e1c50ec950, 0x55e1c517f0f0, undef:i64
try.c: 0x55e1c517f0f0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55e1c5164e40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55e1c5181f90: i64 = undef
try.c: 0x55e1c51e39e0: 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: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: i32 = Constant<0>
try.c: 0x55e1c51e38b0: 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: 0x5642cec18ab0: v4i64 = X86ISD::VTRUNC 0x5642cec18980
try.c: 0x5642cec18980: v16i32 = vselect 0x5642cec00600, 0x5642ceb88350, 0x5642cec18850
try.c: 0x5642cec00600: v4i1 = X86ISD::PCMPGTM 0x5642cebf4180, 0x5642cebf0710
try.c: 0x5642cebf4180: v4i64 = X86ISD::VBROADCAST 0x5642ceb88810
try.c: 0x5642ceb88810: i64,ch = load<LD8[%lsr.iv6971]> 0x5642ceaeea30, 0x5642ceb9ec50, undef:i64
try.c: 0x5642ceb9ec50: i64,ch = CopyFromReg 0x5642ceaeea30, Register:i64 %vreg50
try.c: 0x5642cebf0970: i64 = Register %vreg50
try.c: 0x5642ceb8f430: i64 = undef
try.c: 0x5642cebf0710: v4i64,ch = CopyFromReg 0x5642ceaeea30, Register:v4i64 %vreg13
try.c: 0x5642cebf49d0: v4i64 = Register %vreg13
try.c: 0x5642ceb88350: v16i32 = X86ISD::VBROADCAST 0x5642cebf43e0
try.c: 0x5642cebf43e0: i32,ch = load<LD4[ConstantPool]> 0x5642ceaeea30, 0x5642ceb8acf0, undef:i64
try.c: 0x5642ceb8acf0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5642ceb8fdb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5642ceb8f430: i64 = undef
try.c: 0x5642cec18850: 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: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: i32 = Constant<0>
try.c: 0x5642cec18720: 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: 0x557ab2dfb0d0: v4i64 = X86ISD::VTRUNC 0x557ab2dfafa0
try.c: 0x557ab2dfafa0: v16i32 = vselect 0x557ab2e0bcc0, 0x557ab2d9dc00, 0x557ab2dfae70
try.c: 0x557ab2e0bcc0: v4i1 = X86ISD::PCMPGTM 0x557ab2df4950, 0x557ab2df04e0
try.c: 0x557ab2df4950: v4i64 = X86ISD::VBROADCAST 0x557ab2d9ada0
try.c: 0x557ab2d9ada0: i64,ch = load<LD8[%lsr.iv6971]> 0x557ab2d05950, 0x557ab2dde1d0, undef:i64
try.c: 0x557ab2dde1d0: i64,ch = CopyFromReg 0x557ab2d05950, Register:i64 %vreg50
try.c: 0x557ab2df0740: i64 = Register %vreg50
try.c: 0x557ab2d9c270: i64 = undef
try.c: 0x557ab2df04e0: v4i64,ch = CopyFromReg 0x557ab2d05950, Register:v4i64 %vreg13
try.c: 0x557ab2df51a0: v4i64 = Register %vreg13
try.c: 0x557ab2d9dc00: v16i32 = X86ISD::VBROADCAST 0x557ab2df4bb0
try.c: 0x557ab2df4bb0: i32,ch = load<LD4[ConstantPool]> 0x557ab2d05950, 0x557ab2db0630, undef:i64
try.c: 0x557ab2db0630: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x557ab2dad300: i64 = TargetConstantPool<i32 1> 0
try.c: 0x557ab2d9c270: i64 = undef
try.c: 0x557ab2dfae70: 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: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: i32 = Constant<0>
try.c: 0x557ab2dfad40: 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