Implementation notes: amd64, cel02, crypto_aead/morus640128v1

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: morus640128v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
97481865 0 014848 800 896T:sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
105285892 0 018780 792 856T:sse2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
129286829 0 021554 800 856T:sse2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
137062221 0 016445 824 896T:sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
144122085 0 016549 824 896T:sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
144445786 0 023477 824 960T:sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3905410820 0 024956 816 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4111010624 0 023576 800 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4144410964 0 025348 816 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
4515011463 0 029133 824 960T:refgcc_-march=native_-mtune=native_-O3_-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: 0x56290d54a970: v4i64 = X86ISD::VTRUNC 0x56290d54a840
try.c: 0x56290d54a840: v16i32 = vselect 0x56290d53eae0, 0x56290d4d91c0, 0x56290d54a710
try.c: 0x56290d53eae0: v4i1 = X86ISD::PCMPGTM 0x56290d533010, 0x56290d52eba0
try.c: 0x56290d533010: v4i64 = X86ISD::VBROADCAST 0x56290d4d25d0
try.c: 0x56290d4d25d0: i64,ch = load<LD8[%lsr.iv6971]> 0x56290d4438f0, 0x56290d525110, undef:i64
try.c: 0x56290d525110: i64,ch = CopyFromReg 0x56290d4438f0, Register:i64 %vreg50
try.c: 0x56290d52ee00: i64 = Register %vreg50
try.c: 0x56290d4d3aa0: i64 = undef
try.c: 0x56290d52eba0: v4i64,ch = CopyFromReg 0x56290d4438f0, Register:v4i64 %vreg13
try.c: 0x56290d533860: v4i64 = Register %vreg13
try.c: 0x56290d4d91c0: v16i32 = X86ISD::VBROADCAST 0x56290d533270
try.c: 0x56290d533270: i32,ch = load<LD4[ConstantPool]> 0x56290d4438f0, 0x56290d4d1bb0, undef:i64
try.c: 0x56290d4d1bb0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56290d4faf20: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56290d4d3aa0: i64 = undef
try.c: 0x56290d54a710: 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: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: i32 = Constant<0>
try.c: 0x56290d54a5e0: 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: 0x5604041e1890: v4i64 = X86ISD::VTRUNC 0x5604041e1760
try.c: 0x5604041e1760: v16i32 = vselect 0x5604041f3df0, 0x5604041672b0, 0x5604041e1630
try.c: 0x5604041f3df0: v4i1 = X86ISD::PCMPGTM 0x5604041d51a0, 0x5604041d0720
try.c: 0x5604041d51a0: v4i64 = X86ISD::VBROADCAST 0x560404167770
try.c: 0x560404167770: i64,ch = load<LD8[%lsr.iv6971]> 0x5604040cea30, 0x5604041740b0, undef:i64
try.c: 0x5604041740b0: i64,ch = CopyFromReg 0x5604040cea30, Register:i64 %vreg50
try.c: 0x5604041d0980: i64 = Register %vreg50
try.c: 0x56040416f2c0: i64 = undef
try.c: 0x5604041d0720: v4i64,ch = CopyFromReg 0x5604040cea30, Register:v4i64 %vreg13
try.c: 0x5604041d59f0: v4i64 = Register %vreg13
try.c: 0x5604041672b0: v16i32 = X86ISD::VBROADCAST 0x5604041d5400
try.c: 0x5604041d5400: i32,ch = load<LD4[ConstantPool]> 0x5604040cea30, 0x560404169c50, undef:i64
try.c: 0x560404169c50: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56040416fc40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56040416f2c0: i64 = undef
try.c: 0x5604041e1630: 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: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: i32 = Constant<0>
try.c: 0x5604041e1500: 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: 0x5591f864e710: v4i64 = X86ISD::VTRUNC 0x5591f864e5e0
try.c: 0x5591f864e5e0: v16i32 = vselect 0x5591f86490e0, 0x5591f85e95d0, 0x5591f864e4b0
try.c: 0x5591f86490e0: v4i1 = X86ISD::PCMPGTM 0x5591f8644750, 0x5591f86402e0
try.c: 0x5591f8644750: v4i64 = X86ISD::VBROADCAST 0x5591f85ed040
try.c: 0x5591f85ed040: i64,ch = load<LD8[%lsr.iv6971]> 0x5591f8555950, 0x5591f862f670, undef:i64
try.c: 0x5591f862f670: i64,ch = CopyFromReg 0x5591f8555950, Register:i64 %vreg50
try.c: 0x5591f8640540: i64 = Register %vreg50
try.c: 0x5591f85e7c40: i64 = undef
try.c: 0x5591f86402e0: v4i64,ch = CopyFromReg 0x5591f8555950, Register:v4i64 %vreg13
try.c: 0x5591f8644fa0: v4i64 = Register %vreg13
try.c: 0x5591f85e95d0: v16i32 = X86ISD::VBROADCAST 0x5591f86449b0
try.c: 0x5591f86449b0: i32,ch = load<LD4[ConstantPool]> 0x5591f8555950, 0x5591f85ec620, undef:i64
try.c: 0x5591f85ec620: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5591f862dd50: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5591f85e7c40: i64 = undef
try.c: 0x5591f864e4b0: 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: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: i32 = Constant<0>
try.c: 0x5591f864e380: 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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_generation':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_tag_verification':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_enc_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_dec_aut_partialblock':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o):encrypt.c:(.text+0x...): more undefined references to `morus_stateupdate' follow
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: crypto_aead_morus640128v1.a(encrypt.o): In function `morus_initialization':
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: encrypt.c:(.text+0x...): undefined reference to `morus_stateupdate'
try.c: crypto_aead_morus640128v1.a(encrypt.o):encrypt.c:(.text+0x...): more undefined references to `morus_stateupdate' follow
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

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

Compiler output

Implementation: T:sse2
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: 0x56073808b130: v4i64 = X86ISD::VTRUNC 0x56073808b000
try.c: 0x56073808b000: v16i32 = vselect 0x5607380a7ca0, 0x56073802a8b0, 0x56073808aed0
try.c: 0x5607380a7ca0: v4i1 = X86ISD::PCMPGTM 0x560738085ef0, 0x560738081a80
try.c: 0x560738085ef0: v4i64 = X86ISD::VBROADCAST 0x560738026830
try.c: 0x560738026830: i64,ch = load<LD8[%lsr.iv6971]> 0x560737f96950, 0x5607380781f0, undef:i64
try.c: 0x5607380781f0: i64,ch = CopyFromReg 0x560737f96950, Register:i64 %vreg50
try.c: 0x560738081ce0: i64 = Register %vreg50
try.c: 0x560738028f20: i64 = undef
try.c: 0x560738081a80: v4i64,ch = CopyFromReg 0x560737f96950, Register:v4i64 %vreg13
try.c: 0x560738086740: v4i64 = Register %vreg13
try.c: 0x56073802a8b0: v16i32 = X86ISD::VBROADCAST 0x560738086150
try.c: 0x560738086150: i32,ch = load<LD4[ConstantPool]> 0x560737f96950, 0x560738025e10, undef:i64
try.c: 0x560738025e10: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5607380107a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560738028f20: i64 = undef
try.c: 0x56073808aed0: 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: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: i32 = Constant<0>
try.c: 0x56073808ada0: 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:sse2

Compiler output

Implementation: T:sse2
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: 0x560e5135e7c0: v4i64 = X86ISD::VTRUNC 0x560e5135e690
try.c: 0x560e5135e690: v16i32 = vselect 0x560e513652e0, 0x560e512efc10, 0x560e5135e560
try.c: 0x560e513652e0: v4i1 = X86ISD::PCMPGTM 0x560e513459d0, 0x560e51342170
try.c: 0x560e513459d0: v4i64 = X86ISD::VBROADCAST 0x560e512f00d0
try.c: 0x560e512f00d0: i64,ch = load<LD8[%lsr.iv6971]> 0x560e5123fa20, 0x560e512db250, undef:i64
try.c: 0x560e512db250: i64,ch = CopyFromReg 0x560e5123fa20, Register:i64 %vreg50
try.c: 0x560e513423d0: i64 = Register %vreg50
try.c: 0x560e512de330: i64 = undef
try.c: 0x560e51342170: v4i64,ch = CopyFromReg 0x560e5123fa20, Register:v4i64 %vreg13
try.c: 0x560e51346220: v4i64 = Register %vreg13
try.c: 0x560e512efc10: v16i32 = X86ISD::VBROADCAST 0x560e51345c30
try.c: 0x560e51345c30: i32,ch = load<LD4[ConstantPool]> 0x560e5123fa20, 0x560e512e1cb0, undef:i64
try.c: 0x560e512e1cb0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x560e512decb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560e512de330: i64 = undef
try.c: 0x560e5135e560: 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: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: i32 = Constant<0>
try.c: 0x560e5135e430: 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:sse2

Compiler output

Implementation: T:sse2
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: 0x56295b177e10: v4i64 = X86ISD::VTRUNC 0x56295b177ce0
try.c: 0x56295b177ce0: v16i32 = vselect 0x56295b18e380, 0x56295b117d50, 0x56295b177bb0
try.c: 0x56295b18e380: v4i1 = X86ISD::PCMPGTM 0x56295b1737f0, 0x56295b16f380
try.c: 0x56295b1737f0: v4i64 = X86ISD::VBROADCAST 0x56295b11b8e0
try.c: 0x56295b11b8e0: i64,ch = load<LD8[%lsr.iv6971]> 0x56295b0849d0, 0x56295b15d670, undef:i64
try.c: 0x56295b15d670: i64,ch = CopyFromReg 0x56295b0849d0, Register:i64 %vreg50
try.c: 0x56295b16f5e0: i64 = Register %vreg50
try.c: 0x56295b11cdb0: i64 = undef
try.c: 0x56295b16f380: v4i64,ch = CopyFromReg 0x56295b0849d0, Register:v4i64 %vreg13
try.c: 0x56295b174040: v4i64 = Register %vreg13
try.c: 0x56295b117d50: v16i32 = X86ISD::VBROADCAST 0x56295b173a50
try.c: 0x56295b173a50: i32,ch = load<LD4[ConstantPool]> 0x56295b0849d0, 0x56295b12cd30, undef:i64
try.c: 0x56295b12cd30: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56295b11a7f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56295b11cdb0: i64 = undef
try.c: 0x56295b177bb0: 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: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: i32 = Constant<0>
try.c: 0x56295b177a80: 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:sse2