Implementation notes: amd64, cel02, crypto_aead/clx128q

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: clx128q
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1861382005 0 016372 816 896T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
2304183253 0 017994 800 856T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2468322180 0 016922 800 856T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2559581725 0 014612 792 856T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
2991882685 0 020333 824 960T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3097201972 0 016092 816 896T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3377901868 0 014776 800 896T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
3614121288 0 014188 792 856T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
3845467955 0 025589 824 960T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6730581469 0 015836 816 896T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
6799241319 0 014216 800 896T:refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7694221430 0 015556 816 896T:refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:opt
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: 0x56416dfa8d70: v4i64 = X86ISD::VTRUNC 0x56416dfa8c40
try.c: 0x56416dfa8c40: v16i32 = vselect 0x56416dfa1cb0, 0x56416df45330, 0x56416dfa8b10
try.c: 0x56416dfa1cb0: v4i1 = X86ISD::PCMPGTM 0x56416df89930, 0x56416df854c0
try.c: 0x56416df89930: v4i64 = X86ISD::VBROADCAST 0x56416df29bc0
try.c: 0x56416df29bc0: i64,ch = load<LD8[%lsr.iv6971]> 0x56416de9a900, 0x56416df80320, undef:i64
try.c: 0x56416df80320: i64,ch = CopyFromReg 0x56416de9a900, Register:i64 %vreg50
try.c: 0x56416df85720: i64 = Register %vreg50
try.c: 0x56416df439a0: i64 = undef
try.c: 0x56416df854c0: v4i64,ch = CopyFromReg 0x56416de9a900, Register:v4i64 %vreg13
try.c: 0x56416df8a180: v4i64 = Register %vreg13
try.c: 0x56416df45330: v16i32 = X86ISD::VBROADCAST 0x56416df89b90
try.c: 0x56416df89b90: i32,ch = load<LD4[ConstantPool]> 0x56416de9a900, 0x56416df291a0, undef:i64
try.c: 0x56416df291a0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56416df75330: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56416df439a0: i64 = undef
try.c: 0x56416dfa8b10: 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: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: i32 = Constant<0>
try.c: 0x56416dfa89e0: 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:opt

Compiler output

Implementation: T:opt
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: 0x558e3760d090: v4i64 = X86ISD::VTRUNC 0x558e3760cf60
try.c: 0x558e3760cf60: v16i32 = vselect 0x558e375fbcb0, 0x558e37589f60, 0x558e3760ce30
try.c: 0x558e375fbcb0: v4i1 = X86ISD::PCMPGTM 0x558e375f4ca0, 0x558e375f0a70
try.c: 0x558e375f4ca0: v4i64 = X86ISD::VBROADCAST 0x558e3758a420
try.c: 0x558e3758a420: i64,ch = load<LD8[%lsr.iv6971]> 0x558e374efa00, 0x558e37592260, undef:i64
try.c: 0x558e37592260: i64,ch = CopyFromReg 0x558e374efa00, Register:i64 %vreg50
try.c: 0x558e375f0cd0: i64 = Register %vreg50
try.c: 0x558e37585570: i64 = undef
try.c: 0x558e375f0a70: v4i64,ch = CopyFromReg 0x558e374efa00, Register:v4i64 %vreg13
try.c: 0x558e375f54f0: v4i64 = Register %vreg13
try.c: 0x558e37589f60: v16i32 = X86ISD::VBROADCAST 0x558e375f4f00
try.c: 0x558e375f4f00: i32,ch = load<LD4[ConstantPool]> 0x558e374efa00, 0x558e37590830, undef:i64
try.c: 0x558e37590830: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x558e37585ef0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x558e37585570: i64 = undef
try.c: 0x558e3760ce30: 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: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: i32 = Constant<0>
try.c: 0x558e3760cd00: 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:opt

Compiler output

Implementation: T:opt
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: 0x55ae6ad2e630: v4i64 = X86ISD::VTRUNC 0x55ae6ad2e500
try.c: 0x55ae6ad2e500: v16i32 = vselect 0x55ae6ad29830, 0x55ae6acb3e60, 0x55ae6ad2e3d0
try.c: 0x55ae6ad29830: v4i1 = X86ISD::PCMPGTM 0x55ae6ad0b9d0, 0x55ae6ad07560
try.c: 0x55ae6ad0b9d0: v4i64 = X86ISD::VBROADCAST 0x55ae6acace50
try.c: 0x55ae6acace50: i64,ch = load<LD8[%lsr.iv6971]> 0x55ae6ac1c920, 0x55ae6ad023c0, undef:i64
try.c: 0x55ae6ad023c0: i64,ch = CopyFromReg 0x55ae6ac1c920, Register:i64 %vreg50
try.c: 0x55ae6ad077c0: i64 = Register %vreg50
try.c: 0x55ae6acb24d0: i64 = undef
try.c: 0x55ae6ad07560: v4i64,ch = CopyFromReg 0x55ae6ac1c920, Register:v4i64 %vreg13
try.c: 0x55ae6ad0c220: v4i64 = Register %vreg13
try.c: 0x55ae6acb3e60: v16i32 = X86ISD::VBROADCAST 0x55ae6ad0bc30
try.c: 0x55ae6ad0bc30: i32,ch = load<LD4[ConstantPool]> 0x55ae6ac1c920, 0x55ae6acac430, undef:i64
try.c: 0x55ae6acac430: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55ae6ac79140: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55ae6acb24d0: i64 = undef
try.c: 0x55ae6ad2e3d0: 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: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: i32 = Constant<0>
try.c: 0x55ae6ad2e2a0: 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:opt

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: 0x560953024ac0: v4i64 = X86ISD::VTRUNC 0x560953024990
try.c: 0x560953024990: v16i32 = vselect 0x560953040540, 0x560952fc2670, 0x560953024860
try.c: 0x560953040540: v4i1 = X86ISD::PCMPGTM 0x56095301e120, 0x560953019cb0
try.c: 0x56095301e120: v4i64 = X86ISD::VBROADCAST 0x560952fc4a60
try.c: 0x560952fc4a60: i64,ch = load<LD8[%lsr.iv6971]> 0x560952f2e900, 0x560953003060, undef:i64
try.c: 0x560953003060: i64,ch = CopyFromReg 0x560952f2e900, Register:i64 %vreg50
try.c: 0x560953019f10: i64 = Register %vreg50
try.c: 0x560952fc0ce0: i64 = undef
try.c: 0x560953019cb0: v4i64,ch = CopyFromReg 0x560952f2e900, Register:v4i64 %vreg13
try.c: 0x56095301e970: v4i64 = Register %vreg13
try.c: 0x560952fc2670: v16i32 = X86ISD::VBROADCAST 0x56095301e380
try.c: 0x56095301e380: i32,ch = load<LD4[ConstantPool]> 0x560952f2e900, 0x560952fc4040, undef:i64
try.c: 0x560952fc4040: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x560952fcad80: i64 = TargetConstantPool<i32 1> 0
try.c: 0x560952fc0ce0: i64 = undef
try.c: 0x560953024860: 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: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: i32 = Constant<0>
try.c: 0x560953024730: 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: 0x56193ae5ec60: v4i64 = X86ISD::VTRUNC 0x56193ae5eb30
try.c: 0x56193ae5eb30: v16i32 = vselect 0x56193ae3aaf0, 0x56193ade05b0, 0x56193ae5ea00
try.c: 0x56193ae3aaf0: v4i1 = X86ISD::PCMPGTM 0x56193ae45470, 0x56193ae41240
try.c: 0x56193ae45470: v4i64 = X86ISD::VBROADCAST 0x56193ade0a70
try.c: 0x56193ade0a70: i64,ch = load<LD8[%lsr.iv6971]> 0x56193ad3fa00, 0x56193adda560, undef:i64
try.c: 0x56193adda560: i64,ch = CopyFromReg 0x56193ad3fa00, Register:i64 %vreg50
try.c: 0x56193ae414a0: i64 = Register %vreg50
try.c: 0x56193ade3cd0: i64 = undef
try.c: 0x56193ae41240: v4i64,ch = CopyFromReg 0x56193ad3fa00, Register:v4i64 %vreg13
try.c: 0x56193ae45cc0: v4i64 = Register %vreg13
try.c: 0x56193ade05b0: v16i32 = X86ISD::VBROADCAST 0x56193ae456d0
try.c: 0x56193ae456d0: i32,ch = load<LD4[ConstantPool]> 0x56193ad3fa00, 0x56193adddd90, undef:i64
try.c: 0x56193adddd90: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56193ade4650: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56193ade3cd0: i64 = undef
try.c: 0x56193ae5ea00: 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: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: i32 = Constant<0>
try.c: 0x56193ae5e8d0: 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: 0x55fa1fcfa9d0: v4i64 = X86ISD::VTRUNC 0x55fa1fcfa8a0
try.c: 0x55fa1fcfa8a0: v16i32 = vselect 0x55fa1fd01280, 0x55fa1fc979e0, 0x55fa1fcfa770
try.c: 0x55fa1fd01280: v4i1 = X86ISD::PCMPGTM 0x55fa1fcf5900, 0x55fa1fcf1490
try.c: 0x55fa1fcf5900: v4i64 = X86ISD::VBROADCAST 0x55fa1fc94b80
try.c: 0x55fa1fc94b80: i64,ch = load<LD8[%lsr.iv6971]> 0x55fa1fc06920, 0x55fa1fce0f80, undef:i64
try.c: 0x55fa1fce0f80: i64,ch = CopyFromReg 0x55fa1fc06920, Register:i64 %vreg50
try.c: 0x55fa1fcf16f0: i64 = Register %vreg50
try.c: 0x55fa1fc96050: i64 = undef
try.c: 0x55fa1fcf1490: v4i64,ch = CopyFromReg 0x55fa1fc06920, Register:v4i64 %vreg13
try.c: 0x55fa1fcf6150: v4i64 = Register %vreg13
try.c: 0x55fa1fc979e0: v16i32 = X86ISD::VBROADCAST 0x55fa1fcf5b60
try.c: 0x55fa1fcf5b60: i32,ch = load<LD4[ConstantPool]> 0x55fa1fc06920, 0x55fa1fc99dd0, undef:i64
try.c: 0x55fa1fc99dd0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55fa1fcd9d60: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55fa1fc96050: i64 = undef
try.c: 0x55fa1fcfa770: 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: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: i32 = Constant<0>
try.c: 0x55fa1fcfa640: 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