Implementation notes: amd64, cel02, crypto_aead/paeq128t

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: paeq128t
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
3145810068 32 6553622993 864 66400T:aesniclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
330428331 28 6553622634 892 66496T:aesnig++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3720015423 28 6553633170 892 66560T:aesnig++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
420669207 28 6553623697 884 66496T:aesnig++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
427087429 28 6553620493 868 66464T:aesnig++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
52445409559 28 6553627250 892 66560T:refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
83607464341 28 6553618529 884 66496T:refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
121008463856 32 6553616833 864 66400T:refclang++_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
144048304543 28 6553618977 884 66496T:refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
209017923567 28 6553616573 868 66464T:refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: fatal error: error in backend: Cannot select: 0x5570bd886d50: v4i64 = X86ISD::VTRUNC 0x5570bd886c20
try.cpp: 0x5570bd886c20: v16i32 = vselect 0x5570bd88e800, 0x5570bd831820, 0x5570bd886af0
try.cpp: 0x5570bd88e800: v4i1 = X86ISD::PCMPGTM 0x5570bd86c590, 0x5570bd868120
try.cpp: 0x5570bd86c590: v4i64 = X86ISD::VBROADCAST 0x5570bd80a5c0
try.cpp: 0x5570bd80a5c0: i64,ch = load<LD8[%lsr.iv6971]> 0x5570bd77b9c0, 0x5570bd850120, undef:i64
try.cpp: 0x5570bd850120: i64,ch = CopyFromReg 0x5570bd77b9c0, Register:i64 %vreg50
try.cpp: 0x5570bd868380: i64 = Register %vreg50
try.cpp: 0x5570bd80ba90: i64 = undef
try.cpp: 0x5570bd868120: v4i64,ch = CopyFromReg 0x5570bd77b9c0, Register:v4i64 %vreg13
try.cpp: 0x5570bd86cde0: v4i64 = Register %vreg13
try.cpp: 0x5570bd831820: v16i32 = X86ISD::VBROADCAST 0x5570bd86c7f0
try.cpp: 0x5570bd86c7f0: i32,ch = load<LD4[ConstantPool]> 0x5570bd77b9c0, 0x5570bd8130e0, undef:i64
try.cpp: 0x5570bd8130e0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x5570bd856520: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x5570bd80ba90: i64 = undef
try.cpp: 0x5570bd886af0: 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: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: i32 = Constant<0>
try.cpp: 0x5570bd8869c0: 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:aesni

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: fatal error: error in backend: Cannot select: 0x55df8b2597c0: v4i64 = X86ISD::VTRUNC 0x55df8b259690
try.cpp: 0x55df8b259690: v16i32 = vselect 0x55df8b254190, 0x55df8b1f00f0, 0x55df8b259560
try.cpp: 0x55df8b254190: v4i1 = X86ISD::PCMPGTM 0x55df8b252170, 0x55df8b24e300
try.cpp: 0x55df8b252170: v4i64 = X86ISD::VBROADCAST 0x55df8b1f05b0
try.cpp: 0x55df8b1f05b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55df8b14aa50, 0x55df8b1f5e10, undef:i64
try.cpp: 0x55df8b1f5e10: i64,ch = CopyFromReg 0x55df8b14aa50, Register:i64 %vreg50
try.cpp: 0x55df8b24e560: i64 = Register %vreg50
try.cpp: 0x55df8b200580: i64 = undef
try.cpp: 0x55df8b24e300: v4i64,ch = CopyFromReg 0x55df8b14aa50, Register:v4i64 %vreg13
try.cpp: 0x55df8b2529c0: v4i64 = Register %vreg13
try.cpp: 0x55df8b1f00f0: v16i32 = X86ISD::VBROADCAST 0x55df8b2523d0
try.cpp: 0x55df8b2523d0: i32,ch = load<LD4[ConstantPool]> 0x55df8b14aa50, 0x55df8b1ffbd0, undef:i64
try.cpp: 0x55df8b1ffbd0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55df8b200f00: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55df8b200580: i64 = undef
try.cpp: 0x55df8b259560: 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: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: i32 = Constant<0>
try.cpp: 0x55df8b259430: 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:aesni

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: fatal error: error in backend: Cannot select: 0x561cdf50de30: v4i64 = X86ISD::VTRUNC 0x561cdf50dd00
try.cpp: 0x561cdf50dd00: v16i32 = vselect 0x561cdf508800, 0x561cdf4976b0, 0x561cdf50dbd0
try.cpp: 0x561cdf508800: v4i1 = X86ISD::PCMPGTM 0x561cdf4f44c0, 0x561cdf4f0050
try.cpp: 0x561cdf4f44c0: v4i64 = X86ISD::VBROADCAST 0x561cdf49ba20
try.cpp: 0x561cdf49ba20: i64,ch = load<LD8[%lsr.iv6971]> 0x561cdf4039c0, 0x561cdf4dd0a0, undef:i64
try.cpp: 0x561cdf4dd0a0: i64,ch = CopyFromReg 0x561cdf4039c0, Register:i64 %vreg50
try.cpp: 0x561cdf4f02b0: i64 = Register %vreg50
try.cpp: 0x561cdf495d20: i64 = undef
try.cpp: 0x561cdf4f0050: v4i64,ch = CopyFromReg 0x561cdf4039c0, Register:v4i64 %vreg13
try.cpp: 0x561cdf4f4d10: v4i64 = Register %vreg13
try.cpp: 0x561cdf4976b0: v16i32 = X86ISD::VBROADCAST 0x561cdf4f4720
try.cpp: 0x561cdf4f4720: i32,ch = load<LD4[ConstantPool]> 0x561cdf4039c0, 0x561cdf49b000, undef:i64
try.cpp: 0x561cdf49b000: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x561cdf4de670: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x561cdf495d20: i64 = undef
try.cpp: 0x561cdf50dbd0: 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: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: i32 = Constant<0>
try.cpp: 0x561cdf50daa0: 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:aesni

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.cpp: fatal error: error in backend: Cannot select: 0x562522e81e00: v4i64 = X86ISD::VTRUNC 0x562522e81cd0
try.cpp: 0x562522e81cd0: v16i32 = vselect 0x562522e71920, 0x562522e12450, 0x562522e81ba0
try.cpp: 0x562522e71920: v4i1 = X86ISD::PCMPGTM 0x562522e6b4c0, 0x562522e67050
try.cpp: 0x562522e6b4c0: v4i64 = X86ISD::VBROADCAST 0x562522e0b3f0
try.cpp: 0x562522e0b3f0: i64,ch = load<LD8[%lsr.iv6971]> 0x562522d7aa10, 0x562522e61eb0, undef:i64
try.cpp: 0x562522e61eb0: i64,ch = CopyFromReg 0x562522d7aa10, Register:i64 %vreg50
try.cpp: 0x562522e672b0: i64 = Register %vreg50
try.cpp: 0x562522e10ac0: i64 = undef
try.cpp: 0x562522e67050: v4i64,ch = CopyFromReg 0x562522d7aa10, Register:v4i64 %vreg13
try.cpp: 0x562522e6bd10: v4i64 = Register %vreg13
try.cpp: 0x562522e12450: v16i32 = X86ISD::VBROADCAST 0x562522e6b720
try.cpp: 0x562522e6b720: i32,ch = load<LD4[ConstantPool]> 0x562522d7aa10, 0x562522e0a9d0, undef:i64
try.cpp: 0x562522e0a9d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x562522e30c40: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x562522e10ac0: i64 = undef
try.cpp: 0x562522e81ba0: 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: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: i32 = Constant<0>
try.cpp: 0x562522e81a70: 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
try.cpp: fatal error: error in backend: Cannot select: 0x55559d6e6d10: v4i64 = X86ISD::VTRUNC 0x55559d6e6be0
try.cpp: 0x55559d6e6be0: v16i32 = vselect 0x55559d6fe500, 0x55559d679890, 0x55559d6e6ab0
try.cpp: 0x55559d6fe500: v4i1 = X86ISD::PCMPGTM 0x55559d6deed0, 0x55559d6da450
try.cpp: 0x55559d6deed0: v4i64 = X86ISD::VBROADCAST 0x55559d679d50
try.cpp: 0x55559d679d50: i64,ch = load<LD8[%lsr.iv6971]> 0x55559d5d7a80, 0x55559d681d80, undef:i64
try.cpp: 0x55559d681d80: i64,ch = CopyFromReg 0x55559d5d7a80, Register:i64 %vreg50
try.cpp: 0x55559d6da6b0: i64 = Register %vreg50
try.cpp: 0x55559d672d60: i64 = undef
try.cpp: 0x55559d6da450: v4i64,ch = CopyFromReg 0x55559d5d7a80, Register:v4i64 %vreg13
try.cpp: 0x55559d6df720: v4i64 = Register %vreg13
try.cpp: 0x55559d679890: v16i32 = X86ISD::VBROADCAST 0x55559d6df130
try.cpp: 0x55559d6df130: i32,ch = load<LD4[ConstantPool]> 0x55559d5d7a80, 0x55559d68cc10, undef:i64
try.cpp: 0x55559d68cc10: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55559d6736e0: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55559d672d60: i64 = undef
try.cpp: 0x55559d6e6ab0: 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: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: i32 = Constant<0>
try.cpp: 0x55559d6e6980: 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
try.cpp: fatal error: error in backend: Cannot select: 0x55fb6ca5bef0: v4i64 = X86ISD::VTRUNC 0x55fb6ca5bdc0
try.cpp: 0x55fb6ca5bdc0: v16i32 = vselect 0x55fb6ca4b200, 0x55fb6c9ea2b0, 0x55fb6ca5bc90
try.cpp: 0x55fb6ca4b200: v4i1 = X86ISD::PCMPGTM 0x55fb6ca445a0, 0x55fb6ca40130
try.cpp: 0x55fb6ca445a0: v4i64 = X86ISD::VBROADCAST 0x55fb6c9e3f00
try.cpp: 0x55fb6c9e3f00: i64,ch = load<LD8[%lsr.iv6971]> 0x55fb6c9539a0, 0x55fb6ca2d080, undef:i64
try.cpp: 0x55fb6ca2d080: i64,ch = CopyFromReg 0x55fb6c9539a0, Register:i64 %vreg50
try.cpp: 0x55fb6ca40390: i64 = Register %vreg50
try.cpp: 0x55fb6c9e53d0: i64 = undef
try.cpp: 0x55fb6ca40130: v4i64,ch = CopyFromReg 0x55fb6c9539a0, Register:v4i64 %vreg13
try.cpp: 0x55fb6ca44df0: v4i64 = Register %vreg13
try.cpp: 0x55fb6c9ea2b0: v16i32 = X86ISD::VBROADCAST 0x55fb6ca44800
try.cpp: 0x55fb6ca44800: i32,ch = load<LD4[ConstantPool]> 0x55fb6c9539a0, 0x55fb6c9ecf80, undef:i64
try.cpp: 0x55fb6c9ecf80: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.cpp: 0x55fb6ca29950: i64 = TargetConstantPool<i32 1> 0
try.cpp: 0x55fb6c9e53d0: i64 = undef
try.cpp: 0x55fb6ca5bc90: 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: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: i32 = Constant<0>
try.cpp: 0x55fb6ca5bb60: 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