Implementation notes: amd64, cel02, crypto_aead/aezv3

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: aezv3
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
31049835 0 030748 816 896T:aesnigcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
331810377 0 030852 816 896T:aesnigcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
34349792 0 028792 800 896T:aesnigcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
387820373 0 044557 824 960T:aesnigcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
390811229 0 029412 792 856T:aesniclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
187490830991 0 051466 816 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
193291874392 0 098773 840 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
206228624435 0 045141 840 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
210102026807 0 047981 840 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
219253023828 0 042492 808 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
275547422907 0 042040 816 896T:refgcc_-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.c: fatal error: error in backend: Cannot select: 0x56270113f940: v4i64 = X86ISD::VTRUNC 0x56270113f810
try.c: 0x56270113f810: v16i32 = vselect 0x562701146460, 0x5627010e1dc0, 0x56270113f6e0
try.c: 0x562701146460: v4i1 = X86ISD::PCMPGTM 0x56270113aa00, 0x562701136590
try.c: 0x56270113aa00: v4i64 = X86ISD::VBROADCAST 0x5627010dab20
try.c: 0x5627010dab20: i64,ch = load<LD8[%lsr.iv6971]> 0x56270104b920, 0x562701121320, undef:i64
try.c: 0x562701121320: i64,ch = CopyFromReg 0x56270104b920, Register:i64 %vreg50
try.c: 0x5627011367f0: i64 = Register %vreg50
try.c: 0x5627010e0430: i64 = undef
try.c: 0x562701136590: v4i64,ch = CopyFromReg 0x56270104b920, Register:v4i64 %vreg13
try.c: 0x56270113b250: v4i64 = Register %vreg13
try.c: 0x5627010e1dc0: v16i32 = X86ISD::VBROADCAST 0x56270113ac60
try.c: 0x56270113ac60: i32,ch = load<LD4[ConstantPool]> 0x56270104b920, 0x5627010da100, undef:i64
try.c: 0x5627010da100: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x562701125510: i64 = TargetConstantPool<i32 1> 0
try.c: 0x5627010e0430: i64 = undef
try.c: 0x56270113f6e0: 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: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: i32 = Constant<0>
try.c: 0x56270113f5b0: 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:aesni

Compiler output

Implementation: T:aesni
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: 0x55bced4f8ea0: v4i64 = X86ISD::VTRUNC 0x55bced4f8d70
try.c: 0x55bced4f8d70: v16i32 = vselect 0x55bced4e8120, 0x55bced473bf0, 0x55bced4f8c40
try.c: 0x55bced4e8120: v4i1 = X86ISD::PCMPGTM 0x55bced4dfcb0, 0x55bced4dc850
try.c: 0x55bced4dfcb0: v4i64 = X86ISD::VBROADCAST 0x55bced4740b0
try.c: 0x55bced4740b0: i64,ch = load<LD8[%lsr.iv6971]> 0x55bced3d9a10, 0x55bced49caf0, undef:i64
try.c: 0x55bced49caf0: i64,ch = CopyFromReg 0x55bced3d9a10, Register:i64 %vreg50
try.c: 0x55bced4dcab0: i64 = Register %vreg50
try.c: 0x55bced46ea30: i64 = undef
try.c: 0x55bced4dc850: v4i64,ch = CopyFromReg 0x55bced3d9a10, Register:v4i64 %vreg13
try.c: 0x55bced4e0500: v4i64 = Register %vreg13
try.c: 0x55bced473bf0: v16i32 = X86ISD::VBROADCAST 0x55bced4dff10
try.c: 0x55bced4dff10: i32,ch = load<LD4[ConstantPool]> 0x55bced3d9a10, 0x55bced489530, undef:i64
try.c: 0x55bced489530: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55bced46f3b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55bced46ea30: i64 = undef
try.c: 0x55bced4f8c40: 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: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: i32 = Constant<0>
try.c: 0x55bced4f8b10: 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:aesni

Compiler output

Implementation: T:aesni
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: 0x558af0147af0: v4i64 = X86ISD::VTRUNC 0x558af01479c0
try.c: 0x558af01479c0: v16i32 = vselect 0x558af01444d0, 0x558af00fac50, 0x558af0147890
try.c: 0x558af01444d0: v4i1 = X86ISD::PCMPGTM 0x558af012d160, 0x558af0128cf0
try.c: 0x558af012d160: v4i64 = X86ISD::VBROADCAST 0x558af00d08e0
try.c: 0x558af00d08e0: i64,ch = load<LD8[%lsr.iv6971]> 0x558af003d920, 0x558af0120320, undef:i64
try.c: 0x558af0120320: i64,ch = CopyFromReg 0x558af003d920, Register:i64 %vreg50
try.c: 0x558af0128f50: i64 = Register %vreg50
try.c: 0x558af00f92c0: i64 = undef
try.c: 0x558af0128cf0: v4i64,ch = CopyFromReg 0x558af003d920, Register:v4i64 %vreg13
try.c: 0x558af012d9b0: v4i64 = Register %vreg13
try.c: 0x558af00fac50: v16i32 = X86ISD::VBROADCAST 0x558af012d3c0
try.c: 0x558af012d3c0: i32,ch = load<LD4[ConstantPool]> 0x558af003d920, 0x558af00cfec0, undef:i64
try.c: 0x558af00cfec0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558af00ea320: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558af00f92c0: i64 = undef
try.c: 0x558af0147890: 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: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: i32 = Constant<0>
try.c: 0x558af0147760: 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:aesni

Compiler output

Implementation: T:aesni
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aez_ni.c: aez_ni.c:458:15: error: always_inline function '_mm_testc_si128' requires target feature 'ssse3', but would be inlined into function 'cipher_aez_core' that is compiled without support for 'ssse3'
aez_ni.c: if (d && !_mm_testc_si128(loadu(pad+abytes),final0)) return -1;
aez_ni.c: ^
aez_ni.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -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
aez_ref.c: fatal error: error in backend: Cannot select: 0x56209d655fe0: v32i16 = scalar_to_vector Constant:i16<1>
aez_ref.c: 0x56209d656960: i16 = Constant<1>
aez_ref.c: In function: Decrypt
aez_ref.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
aez_ref.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
aez_ref.c: Target: x86_64-pc-linux-gnu
aez_ref.c: Thread model: posix
aez_ref.c: InstalledDir: /usr/bin
aez_ref.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
aez_ref.c: clang: note: diagnostic msg:
aez_ref.c: ********************
aez_ref.c:
aez_ref.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
aez_ref.c: Preprocessed source(s) and associated run script(s) are located at:
aez_ref.c: clang: note: diagnostic msg: /tmp/aez_ref-2fc913.c
aez_ref.c: clang: note: diagnostic msg: /tmp/aez_ref-2fc913.sh
aez_ref.c: clang: note: diagnostic msg:
aez_ref.c:
aez_ref.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
aez_ref.c: fatal error: error in backend: Cannot select: 0x560182ced7e0: v32i16 = scalar_to_vector Constant:i16<1>
aez_ref.c: 0x560182cee160: i16 = Constant<1>
aez_ref.c: In function: Decrypt
aez_ref.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
aez_ref.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
aez_ref.c: Target: x86_64-pc-linux-gnu
aez_ref.c: Thread model: posix
aez_ref.c: InstalledDir: /usr/bin
aez_ref.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
aez_ref.c: clang: note: diagnostic msg:
aez_ref.c: ********************
aez_ref.c:
aez_ref.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
aez_ref.c: Preprocessed source(s) and associated run script(s) are located at:
aez_ref.c: clang: note: diagnostic msg: /tmp/aez_ref-c8f926.c
aez_ref.c: clang: note: diagnostic msg: /tmp/aez_ref-c8f926.sh
aez_ref.c: clang: note: diagnostic msg:
aez_ref.c:
aez_ref.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
aez_ref.c: fatal error: error in backend: Cannot select: 0x558a03031440: v32i16 = scalar_to_vector Constant:i16<1>
aez_ref.c: 0x558a03031dc0: i16 = Constant<1>
aez_ref.c: In function: Decrypt
aez_ref.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
aez_ref.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
aez_ref.c: Target: x86_64-pc-linux-gnu
aez_ref.c: Thread model: posix
aez_ref.c: InstalledDir: /usr/bin
aez_ref.c: clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
aez_ref.c: clang: note: diagnostic msg:
aez_ref.c: ********************
aez_ref.c:
aez_ref.c: PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
aez_ref.c: Preprocessed source(s) and associated run script(s) are located at:
aez_ref.c: clang: note: diagnostic msg: /tmp/aez_ref-bb4a15.c
aez_ref.c: clang: note: diagnostic msg: /tmp/aez_ref-bb4a15.sh
aez_ref.c: clang: note: diagnostic msg:
aez_ref.c:
aez_ref.c: ********************

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