Implementation notes: amd64, cel02, crypto_aead/isapa128av20

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: isapa128av20
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
6655664676 0 022485 832 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9283523671 0 018188 824 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9465624633 0 019526 808 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
11691303103 0 016152 808 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
11776423497 0 017732 824 896T:refgcc_-march=native_-mtune=native_-O_-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: 0x56076a7011a0: v4i64 = X86ISD::VTRUNC 0x56076a701070
try.c: 0x56076a701070: v16i32 = vselect 0x56076a708c50, 0x56076a6a2350, 0x56076a700f40
try.c: 0x56076a708c50: v4i1 = X86ISD::PCMPGTM 0x56076a6e6820, 0x56076a6e23b0
try.c: 0x56076a6e6820: v4i64 = X86ISD::VBROADCAST 0x56076a686aa0
try.c: 0x56076a686aa0: i64,ch = load<LD8[%lsr.iv6971]> 0x56076a5f7950, 0x56076a6d2150, undef:i64
try.c: 0x56076a6d2150: i64,ch = CopyFromReg 0x56076a5f7950, Register:i64 %vreg50
try.c: 0x56076a6e2610: i64 = Register %vreg50
try.c: 0x56076a6a09c0: i64 = undef
try.c: 0x56076a6e23b0: v4i64,ch = CopyFromReg 0x56076a5f7950, Register:v4i64 %vreg13
try.c: 0x56076a6e7070: v4i64 = Register %vreg13
try.c: 0x56076a6a2350: v16i32 = X86ISD::VBROADCAST 0x56076a6e6a80
try.c: 0x56076a6e6a80: i32,ch = load<LD4[ConstantPool]> 0x56076a5f7950, 0x56076a686080, undef:i64
try.c: 0x56076a686080: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56076a669780: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56076a6a09c0: i64 = undef
try.c: 0x56076a700f40: 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: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: i32 = Constant<0>
try.c: 0x56076a700e10: 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: 0x55ac543d1ad0: v4i64 = X86ISD::VTRUNC 0x55ac543d19a0
try.c: 0x55ac543d19a0: v16i32 = vselect 0x55ac543ce4b0, 0x55ac54359410, 0x55ac543d1870
try.c: 0x55ac543ce4b0: v4i1 = X86ISD::PCMPGTM 0x55ac543c61b0, 0x55ac543c1730
try.c: 0x55ac543c61b0: v4i64 = X86ISD::VBROADCAST 0x55ac543598d0
try.c: 0x55ac543598d0: i64,ch = load<LD8[%lsr.iv6971]> 0x55ac542bfa30, 0x55ac5436ed10, undef:i64
try.c: 0x55ac5436ed10: i64,ch = CopyFromReg 0x55ac542bfa30, Register:i64 %vreg50
try.c: 0x55ac543c1990: i64 = Register %vreg50
try.c: 0x55ac54362190: i64 = undef
try.c: 0x55ac543c1730: v4i64,ch = CopyFromReg 0x55ac542bfa30, Register:v4i64 %vreg13
try.c: 0x55ac543c6a00: v4i64 = Register %vreg13
try.c: 0x55ac54359410: v16i32 = X86ISD::VBROADCAST 0x55ac543c6410
try.c: 0x55ac543c6410: i32,ch = load<LD4[ConstantPool]> 0x55ac542bfa30, 0x55ac54368070, undef:i64
try.c: 0x55ac54368070: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55ac54362b10: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55ac54362190: i64 = undef
try.c: 0x55ac543d1870: 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: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: i32 = Constant<0>
try.c: 0x55ac543d1740: 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: 0x55b810171390: v4i64 = X86ISD::VTRUNC 0x55b810171260
try.c: 0x55b810171260: v16i32 = vselect 0x55b81015aa40, 0x55b810101970, 0x55b810171130
try.c: 0x55b81015aa40: v4i1 = X86ISD::PCMPGTM 0x55b810159a30, 0x55b8101555c0
try.c: 0x55b810159a30: v4i64 = X86ISD::VBROADCAST 0x55b810108640
try.c: 0x55b810108640: i64,ch = load<LD8[%lsr.iv6971]> 0x55b81006a950, 0x55b810147440, undef:i64
try.c: 0x55b810147440: i64,ch = CopyFromReg 0x55b81006a950, Register:i64 %vreg50
try.c: 0x55b810155820: i64 = Register %vreg50
try.c: 0x55b8100fffe0: i64 = undef
try.c: 0x55b8101555c0: v4i64,ch = CopyFromReg 0x55b81006a950, Register:v4i64 %vreg13
try.c: 0x55b81015a280: v4i64 = Register %vreg13
try.c: 0x55b810101970: v16i32 = X86ISD::VBROADCAST 0x55b810159c90
try.c: 0x55b810159c90: i32,ch = load<LD4[ConstantPool]> 0x55b81006a950, 0x55b810107c20, undef:i64
try.c: 0x55b810107c20: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55b8101480e0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55b8100fffe0: i64 = undef
try.c: 0x55b810171130: 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: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: i32 = Constant<0>
try.c: 0x55b810171000: 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
decrypt.c: fatal error: error in backend: Cannot select: 0x5588b3b6a4e0: v4i32 = X86ISD::PCMPEQM 0x5588b3b6d010, 0x5588b3b6a740
decrypt.c: 0x5588b3b6d010: v4i32 = X86ISD::VZEXT 0x5588b3b67550
decrypt.c: 0x5588b3b67550: v16i8 = bitcast 0x5588b3b672f0
decrypt.c: 0x5588b3b672f0: v4i32 = scalar_to_vector 0x5588b3b677b0
decrypt.c: 0x5588b3b677b0: i32,ch = load<LD4[%sunkaddr15]> 0x5588b3ae6950, 0x5588b3b67f70, undef:i64
decrypt.c: 0x5588b3b67f70: i64 = add FrameIndex:i64<0>, 0x5588b3b67d10
decrypt.c: 0x5588b3b67ab0: i64 = FrameIndex<0>
decrypt.c: 0x5588b3b67d10: i64,ch = CopyFromReg 0x5588b3ae6950, Register:i64 %vreg2
decrypt.c: 0x5588b3b678e0: i64 = Register %vreg2
decrypt.c: 0x5588b3b66f60: i64 = undef
decrypt.c: 0x5588b3b6a740: v4i32 = X86ISD::VZEXT 0x5588b3b6ad30
decrypt.c: 0x5588b3b6ad30: v16i8 = bitcast 0x5588b3b6b290
decrypt.c: 0x5588b3b6b290: v4i32 = scalar_to_vector 0x5588b3b6b4f0
decrypt.c: 0x5588b3b6b4f0: i32,ch = load<LD4[%uglygep9](align=1)> 0x5588b3ae6950, 0x5588b3b6cc80, undef:i64
decrypt.c: 0x5588b3b6cc80: i64 = add 0x5588b3b67090, 0x5588b3b67d10
decrypt.c: 0x5588b3b67090: i64,ch = CopyFromReg 0x5588b3ae6950, Register:i64 %vreg1
decrypt.c: 0x5588b3b6a3b0: i64 = Register %vreg1
decrypt.c: 0x5588b3b67d10: i64,ch = CopyFromReg 0x5588b3ae6950, Register:i64 %vreg2
decrypt.c: 0x5588b3b678e0: i64 = Register %vreg2
decrypt.c: 0x5588b3b66f60: i64 = undef
decrypt.c: In function: crypto_aead_isapa128av20_ref_timingleaks_decrypt
decrypt.c: clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
decrypt.c: clang version 3.8.1-24 (tags/RELEASE_381/final)
decrypt.c: Target: x86_64-pc-linux-gnu
decrypt.c: Thread model: posix
decrypt.c: ...

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