Implementation notes: amd64, cel02, crypto_aead/isapk128v20

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: isapk128v20
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
31869965391 0 023229 832 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
77518105759 0 020686 808 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
157993143594 0 016688 808 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
165651484466 0 019036 824 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
309905864440 0 018821 832 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: 0x5565815b9f90: v4i64 = X86ISD::VTRUNC 0x5565815b9e60
try.c: 0x5565815b9e60: v16i32 = vselect 0x5565815d6dd0, 0x556581555690, 0x5565815b9d30
try.c: 0x5565815d6dd0: v4i1 = X86ISD::PCMPGTM 0x5565815adcf0, 0x5565815aa490
try.c: 0x5565815adcf0: v4i64 = X86ISD::VBROADCAST 0x556581551620
try.c: 0x556581551620: i64,ch = load<LD8[%lsr.iv6971]> 0x5565814be920, 0x556581571650, undef:i64
try.c: 0x556581571650: i64,ch = CopyFromReg 0x5565814be920, Register:i64 %vreg50
try.c: 0x5565815aa6f0: i64 = Register %vreg50
try.c: 0x556581552af0: i64 = undef
try.c: 0x5565815aa490: v4i64,ch = CopyFromReg 0x5565814be920, Register:v4i64 %vreg13
try.c: 0x5565815ae540: v4i64 = Register %vreg13
try.c: 0x556581555690: v16i32 = X86ISD::VBROADCAST 0x5565815adf50
try.c: 0x5565815adf50: i32,ch = load<LD4[ConstantPool]> 0x5565814be920, 0x55658154efd0, undef:i64
try.c: 0x55658154efd0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5565815a5830: i64 = TargetConstantPool<i32 1> 0
try.c: 0x556581552af0: i64 = undef
try.c: 0x5565815b9d30: 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: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: i32 = Constant<0>
try.c: 0x5565815b9c00: 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: 0x55cd37265a50: v4i64 = X86ISD::VTRUNC 0x55cd37265920
try.c: 0x55cd37265920: v16i32 = vselect 0x55cd37269ea0, 0x55cd37204820, 0x55cd372657f0
try.c: 0x55cd37269ea0: v4i1 = X86ISD::PCMPGTM 0x55cd3724b0a0, 0x55cd37246c30
try.c: 0x55cd3724b0a0: v4i64 = X86ISD::VBROADCAST 0x55cd37204ce0
try.c: 0x55cd37204ce0: i64,ch = load<LD8[%lsr.iv6971]> 0x55cd37144a30, 0x55cd371e7430, undef:i64
try.c: 0x55cd371e7430: i64,ch = CopyFromReg 0x55cd37144a30, Register:i64 %vreg50
try.c: 0x55cd37246e90: i64 = Register %vreg50
try.c: 0x55cd371f5ae0: i64 = undef
try.c: 0x55cd37246c30: v4i64,ch = CopyFromReg 0x55cd37144a30, Register:v4i64 %vreg13
try.c: 0x55cd3724b8f0: v4i64 = Register %vreg13
try.c: 0x55cd37204820: v16i32 = X86ISD::VBROADCAST 0x55cd3724b300
try.c: 0x55cd3724b300: i32,ch = load<LD4[ConstantPool]> 0x55cd37144a30, 0x55cd371e5a00, undef:i64
try.c: 0x55cd371e5a00: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55cd371f6460: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55cd371f5ae0: i64 = undef
try.c: 0x55cd372657f0: 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: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: i32 = Constant<0>
try.c: 0x55cd372656c0: 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: 0x55672c2e7200: v4i64 = X86ISD::VTRUNC 0x55672c2e70d0
try.c: 0x55672c2e70d0: v16i32 = vselect 0x55672c2d3590, 0x55672c26cd40, 0x55672c2e6fa0
try.c: 0x55672c2d3590: v4i1 = X86ISD::PCMPGTM 0x55672c2cca30, 0x55672c2c85c0
try.c: 0x55672c2cca30: v4i64 = X86ISD::VBROADCAST 0x55672c270af0
try.c: 0x55672c270af0: i64,ch = load<LD8[%lsr.iv6971]> 0x55672c1dd930, 0x55672c2c3420, undef:i64
try.c: 0x55672c2c3420: i64,ch = CopyFromReg 0x55672c1dd930, Register:i64 %vreg50
try.c: 0x55672c2c8820: i64 = Register %vreg50
try.c: 0x55672c26b3b0: i64 = undef
try.c: 0x55672c2c85c0: v4i64,ch = CopyFromReg 0x55672c1dd930, Register:v4i64 %vreg13
try.c: 0x55672c2cd280: v4i64 = Register %vreg13
try.c: 0x55672c26cd40: v16i32 = X86ISD::VBROADCAST 0x55672c2ccc90
try.c: 0x55672c2ccc90: i32,ch = load<LD4[ConstantPool]> 0x55672c1dd930, 0x55672c2700d0, undef:i64
try.c: 0x55672c2700d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55672c2b7ff0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55672c26b3b0: i64 = undef
try.c: 0x55672c2e6fa0: 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: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: i32 = Constant<0>
try.c: 0x55672c2e6e70: 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: 0x562f62d9e430: v4i32 = X86ISD::PCMPEQM 0x562f62da1010, 0x562f62d9e690
decrypt.c: 0x562f62da1010: v4i32 = X86ISD::VZEXT 0x562f62d9b4a0
decrypt.c: 0x562f62d9b4a0: v16i8 = bitcast 0x562f62d9b240
decrypt.c: 0x562f62d9b240: v4i32 = scalar_to_vector 0x562f62d9b700
decrypt.c: 0x562f62d9b700: i32,ch = load<LD4[%sunkaddr15]> 0x562f62d1a910, 0x562f62d9bec0, undef:i64
decrypt.c: 0x562f62d9bec0: i64 = add FrameIndex:i64<0>, 0x562f62d9bc60
decrypt.c: 0x562f62d9ba00: i64 = FrameIndex<0>
decrypt.c: 0x562f62d9bc60: i64,ch = CopyFromReg 0x562f62d1a910, Register:i64 %vreg2
decrypt.c: 0x562f62d9b830: i64 = Register %vreg2
decrypt.c: 0x562f62d9aeb0: i64 = undef
decrypt.c: 0x562f62d9e690: v4i32 = X86ISD::VZEXT 0x562f62d9ec80
decrypt.c: 0x562f62d9ec80: v16i8 = bitcast 0x562f62d9f1e0
decrypt.c: 0x562f62d9f1e0: v4i32 = scalar_to_vector 0x562f62d9f440
decrypt.c: 0x562f62d9f440: i32,ch = load<LD4[%uglygep9](align=1)> 0x562f62d1a910, 0x562f62da0c80, undef:i64
decrypt.c: 0x562f62da0c80: i64 = add 0x562f62d9afe0, 0x562f62d9bc60
decrypt.c: 0x562f62d9afe0: i64,ch = CopyFromReg 0x562f62d1a910, Register:i64 %vreg1
decrypt.c: 0x562f62d9e300: i64 = Register %vreg1
decrypt.c: 0x562f62d9bc60: i64,ch = CopyFromReg 0x562f62d1a910, Register:i64 %vreg2
decrypt.c: 0x562f62d9b830: i64 = Register %vreg2
decrypt.c: 0x562f62d9aeb0: i64 = undef
decrypt.c: In function: crypto_aead_isapk128v20_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