Implementation notes: amd64, cel02, crypto_aead/aes256gcmv1

Computer: cel02
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20201130
Operation: crypto_aead
Primitive: aes256gcmv1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
7136855 0 020543 880 896T:opensslnewgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7258940 0 022219 896 896T:opensslnewgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
7286889 0 022033 880 856T:opensslnewclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
87926071 0 024984 800 896dolbeau/aesenc-intgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
9892894 0 025924 904 960T:opensslnewgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
10026850 0 020139 872 856T:opensslnewclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1024214581 0 032964 792 856dolbeau/aesenc-intclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
1025013264 0 034172 816 896dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1034014552 0 038709 824 960dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
1101213387 0 033820 816 896dolbeau/aesenc-intgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
11632894 0 022667 896 896T:opensslnewgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
24336641800 0 1620996 792 880refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
34903003171 0 1624210 800 880refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2020121120201130
173516282292 0 1623980 816 912refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
177415662198 0 1623436 816 912refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
321361643834 0 1628829 824 976refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130
326208701813 0 1621472 800 912refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2020121120201130

Compiler output

Implementation: T:cryptopp
Security model: timingleaks
Compiler: clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
stream.cpp: stream.cpp:2:10: fatal error: 'cryptopp/aes.h' file not found
stream.cpp: #include <cryptopp/aes.h>
stream.cpp: ^
stream.cpp: 1 error generated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang++ -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:cryptopp
clang++ -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:cryptopp
clang++ -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:cryptopp
clang++ -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:cryptopp

Compiler output

Implementation: T:cryptopp
Security model: timingleaks
Compiler: g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
stream.cpp: stream.cpp:2:26: fatal error: cryptopp/aes.h: No such file or directory
stream.cpp: #include <cryptopp/aes.h>
stream.cpp: ^
stream.cpp: compilation terminated.

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
g++ -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:cryptopp
g++ -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:cryptopp
g++ -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:cryptopp
g++ -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:cryptopp

Compiler output

Implementation: dolbeau/aesenc-int
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55d769ce6100: v4i64 = X86ISD::VTRUNC 0x55d769ce5fd0
try.c: 0x55d769ce5fd0: v16i32 = vselect 0x55d769cfa6a0, 0x55d769c99bb0, 0x55d769ce5ea0
try.c: 0x55d769cfa6a0: v4i1 = X86ISD::PCMPGTM 0x55d769ce1ae0, 0x55d769cdd670
try.c: 0x55d769ce1ae0: v4i64 = X86ISD::VBROADCAST 0x55d769c96d50
try.c: 0x55d769c96d50: i64,ch = load<LD8[%lsr.iv6971]> 0x55d769bf2960, 0x55d769cd84d0, undef:i64
try.c: 0x55d769cd84d0: i64,ch = CopyFromReg 0x55d769bf2960, Register:i64 %vreg50
try.c: 0x55d769cdd8d0: i64 = Register %vreg50
try.c: 0x55d769c98220: i64 = undef
try.c: 0x55d769cdd670: v4i64,ch = CopyFromReg 0x55d769bf2960, Register:v4i64 %vreg13
try.c: 0x55d769ce2330: v4i64 = Register %vreg13
try.c: 0x55d769c99bb0: v16i32 = X86ISD::VBROADCAST 0x55d769ce1d40
try.c: 0x55d769ce1d40: i32,ch = load<LD4[ConstantPool]> 0x55d769bf2960, 0x55d769c831a0, undef:i64
try.c: 0x55d769c831a0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55d769cd40f0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55d769c98220: i64 = undef
try.c: 0x55d769ce5ea0: 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: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: i32 = Constant<0>
try.c: 0x55d769ce5d70: 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 dolbeau/aesenc-int

Compiler output

Implementation: dolbeau/aesenc-int
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x564314000800: v4i64 = X86ISD::VTRUNC 0x5643140006d0
try.c: 0x5643140006d0: v16i32 = vselect 0x564313ffb1d0, 0x564313f79eb0, 0x5643140005a0
try.c: 0x564313ffb1d0: v4i1 = X86ISD::PCMPGTM 0x564313fe6e90, 0x564313fe2a20
try.c: 0x564313fe6e90: v4i64 = X86ISD::VBROADCAST 0x564313f7a370
try.c: 0x564313f7a370: i64,ch = load<LD8[%lsr.iv6971]> 0x564313ee0a40, 0x564313f820c0, undef:i64
try.c: 0x564313f820c0: i64,ch = CopyFromReg 0x564313ee0a40, Register:i64 %vreg50
try.c: 0x564313fe2c80: i64 = Register %vreg50
try.c: 0x564313f8fb50: i64 = undef
try.c: 0x564313fe2a20: v4i64,ch = CopyFromReg 0x564313ee0a40, Register:v4i64 %vreg13
try.c: 0x564313fe76e0: v4i64 = Register %vreg13
try.c: 0x564313f79eb0: v16i32 = X86ISD::VBROADCAST 0x564313fe70f0
try.c: 0x564313fe70f0: i32,ch = load<LD4[ConstantPool]> 0x564313ee0a40, 0x564313f7c850, undef:i64
try.c: 0x564313f7c850: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x564313f904d0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x564313f8fb50: i64 = undef
try.c: 0x5643140005a0: 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: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: i32 = Constant<0>
try.c: 0x564314000470: 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 dolbeau/aesenc-int

Compiler output

Implementation: dolbeau/aesenc-int
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x55625e85a7e0: v4i64 = X86ISD::VTRUNC 0x55625e85a6b0
try.c: 0x55625e85a6b0: v16i32 = vselect 0x55625e84b550, 0x55625e801f70, 0x55625e85a580
try.c: 0x55625e84b550: v4i1 = X86ISD::PCMPGTM 0x55625e852b10, 0x55625e84e6a0
try.c: 0x55625e852b10: v4i64 = X86ISD::VBROADCAST 0x55625e7ff110
try.c: 0x55625e7ff110: i64,ch = load<LD8[%lsr.iv6971]> 0x55625e763960, 0x55625e83c030, undef:i64
try.c: 0x55625e83c030: i64,ch = CopyFromReg 0x55625e763960, Register:i64 %vreg50
try.c: 0x55625e84e900: i64 = Register %vreg50
try.c: 0x55625e8005e0: i64 = undef
try.c: 0x55625e84e6a0: v4i64,ch = CopyFromReg 0x55625e763960, Register:v4i64 %vreg13
try.c: 0x55625e853360: v4i64 = Register %vreg13
try.c: 0x55625e801f70: v16i32 = X86ISD::VBROADCAST 0x55625e852d70
try.c: 0x55625e852d70: i32,ch = load<LD4[ConstantPool]> 0x55625e763960, 0x55625e80e760, undef:i64
try.c: 0x55625e80e760: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55625e83d230: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55625e8005e0: i64 = undef
try.c: 0x55625e85a580: 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: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: i32 = Constant<0>
try.c: 0x55625e85a450: 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 dolbeau/aesenc-int

Compiler output

Implementation: dolbeau/aesenc-int
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
aesenc-int.c: aesenc-int.c:665:16: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'crypto_aead_aes256gcmv1_dolbeau_aesenc_int_constbranchindex_encrypt' that is compiled without support for 'ssse3'
aesenc-int.c: __m128i Hv = _mm_shuffle_epi8(_mm_loadu_si128((const __m128i*)H), rev);
aesenc-int.c: ^
aesenc-int.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 dolbeau/aesenc-int

Compiler output

Implementation: dolbeau/vaesenc-int
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
vaesenc-int.c: vaesenc-int.c:49:18: warning: implicit declaration of function '_mm512_broadcast_i32x4' is invalid in C99 [-Wimplicit-function-declaration]
vaesenc-int.c: rkeys[idx++] = _mm512_broadcast_i32x4(key0);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:49:16: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
vaesenc-int.c: rkeys[idx++] = _mm512_broadcast_i32x4(key0);
vaesenc-int.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:74:3: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
vaesenc-int.c: BLOCK1(0x01);
vaesenc-int.c: ^~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:56:16: note: expanded from macro 'BLOCK1'
vaesenc-int.c: rkeys[idx++] = _mm512_broadcast_i32x4(temp2); \
vaesenc-int.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:75:3: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
vaesenc-int.c: BLOCK2(0x01);
vaesenc-int.c: ^~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:66:16: note: expanded from macro 'BLOCK2'
vaesenc-int.c: rkeys[idx++] = _mm512_broadcast_i32x4(temp0); \
vaesenc-int.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:77:3: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
vaesenc-int.c: BLOCK1(0x02);
vaesenc-int.c: ^~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:56:16: note: expanded from macro 'BLOCK1'
vaesenc-int.c: rkeys[idx++] = _mm512_broadcast_i32x4(temp2); \
vaesenc-int.c: ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:78:3: error: assigning to '__m512i' (vector of 8 'long long' values) from incompatible type 'int'
vaesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/vaesenc-int
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/vaesenc-int
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/vaesenc-int
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/vaesenc-int
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE dolbeau/vaesenc-int

Compiler output

Implementation: dolbeau/vaesenc-int
Security model: constbranchindex
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
vaesenc-int.c: vaesenc-int.c: In function 'aesni_encryptv2':
vaesenc-int.c: vaesenc-int.c:261:34: warning: passing argument 1 of '_mm256_load_si256' from incompatible pointer type [-Wincompatible-pointer-types]
vaesenc-int.c: __m256i nv = _mm256_load_si256((const __m128i *)n);
vaesenc-int.c: ^
vaesenc-int.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/6/include/immintrin.h:41:0,
vaesenc-int.c: from vaesenc-int.c:11:
vaesenc-int.c: /usr/lib/gcc/x86_64-linux-gnu/6/include/avxintrin.h:882:1: note: expected 'const __vector(4) long long int *' but argument is of type 'const __vector(2) long long int *'
vaesenc-int.c: _mm256_load_si256 (__m256i const *__P)
vaesenc-int.c: ^~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:266:12: warning: implicit declaration of function '_mm256_aesenc_epi128' [-Wimplicit-function-declaration]
vaesenc-int.c: temp = _mm256_aesenc_epi128(temp, rkeys[i]);
vaesenc-int.c: ^~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:266:10: error: incompatible types when assigning to type '__m256i {aka __vector(4) long long int}' from type 'int'
vaesenc-int.c: temp = _mm256_aesenc_epi128(temp, rkeys[i]);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c:268:10: warning: implicit declaration of function '_mm256_aesenclast_epi128' [-Wimplicit-function-declaration]
vaesenc-int.c: temp = _mm256_aesenclast_epi128(temp, rkeys[14]);
vaesenc-int.c: ^~~~~~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: vaesenc-int.c:268:8: error: incompatible types when assigning to type '__m256i {aka __vector(4) long long int}' from type 'int'
vaesenc-int.c: temp = _mm256_aesenclast_epi128(temp, rkeys[14]);
vaesenc-int.c: ^
vaesenc-int.c: vaesenc-int.c: In function 'aesni_encryptv4':
vaesenc-int.c: vaesenc-int.c:278:12: warning: implicit declaration of function '_mm512_aesenc_epi128' [-Wimplicit-function-declaration]
vaesenc-int.c: temp = _mm512_aesenc_epi128(temp, rkeys[i]);
vaesenc-int.c: ^~~~~~~~~~~~~~~~~~~~
vaesenc-int.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE dolbeau/vaesenc-int

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
decrypt.c: decrypt.c:13:18: error: variable has incomplete type 'EVP_CIPHER_CTX' (aka 'struct evp_cipher_ctx_st')
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^
decrypt.c: /usr/include/openssl/ossl_typ.h:90:16: note: forward declaration of 'struct evp_cipher_ctx_st'
decrypt.c: typedef struct evp_cipher_ctx_st EVP_CIPHER_CTX;
decrypt.c: ^
decrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:openssl

Compiler output

Implementation: T:openssl
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
decrypt.c: decrypt.c: In function 'crypto_aead_aes256gcmv1_openssl_timingleaks_decrypt':
decrypt.c: decrypt.c:13:18: error: storage size of 'x' isn't known
decrypt.c: EVP_CIPHER_CTX x;
decrypt.c: ^

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:openssl

Compiler output

Implementation: T:opensslnew
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: 0x55c0dab62680: v4i64 = X86ISD::VTRUNC 0x55c0dab62550
try.c: 0x55c0dab62550: v16i32 = vselect 0x55c0dab7f390, 0x55c0dab03610, 0x55c0dab62420
try.c: 0x55c0dab7f390: v4i1 = X86ISD::PCMPGTM 0x55c0dab5d050, 0x55c0dab58be0
try.c: 0x55c0dab5d050: v4i64 = X86ISD::VBROADCAST 0x55c0dab16ff0
try.c: 0x55c0dab16ff0: i64,ch = load<LD8[%lsr.iv6971]> 0x55c0daa6d950, 0x55c0dab435e0, undef:i64
try.c: 0x55c0dab435e0: i64,ch = CopyFromReg 0x55c0daa6d950, Register:i64 %vreg50
try.c: 0x55c0dab58e40: i64 = Register %vreg50
try.c: 0x55c0dab184c0: i64 = undef
try.c: 0x55c0dab58be0: v4i64,ch = CopyFromReg 0x55c0daa6d950, Register:v4i64 %vreg13
try.c: 0x55c0dab5d8a0: v4i64 = Register %vreg13
try.c: 0x55c0dab03610: v16i32 = X86ISD::VBROADCAST 0x55c0dab5d2b0
try.c: 0x55c0dab5d2b0: i32,ch = load<LD4[ConstantPool]> 0x55c0daa6d950, 0x55c0dab165d0, undef:i64
try.c: 0x55c0dab165d0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55c0dab225a0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55c0dab184c0: i64 = undef
try.c: 0x55c0dab62420: 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: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: i32 = Constant<0>
try.c: 0x55c0dab622f0: 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:opensslnew

Compiler output

Implementation: T:opensslnew
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: 0x56543ab53d00: v4i64 = X86ISD::VTRUNC 0x56543ab53bd0
try.c: 0x56543ab53bd0: v16i32 = vselect 0x56543ab3c330, 0x56543aac6eb0, 0x56543ab53aa0
try.c: 0x56543ab3c330: v4i1 = X86ISD::PCMPGTM 0x56543ab30410, 0x56543ab2bfa0
try.c: 0x56543ab30410: v4i64 = X86ISD::VBROADCAST 0x56543aac7370
try.c: 0x56543aac7370: i64,ch = load<LD8[%lsr.iv6971]> 0x56543aa29a00, 0x56543aacb820, undef:i64
try.c: 0x56543aacb820: i64,ch = CopyFromReg 0x56543aa29a00, Register:i64 %vreg50
try.c: 0x56543ab2c200: i64 = Register %vreg50
try.c: 0x56543aae9b00: i64 = undef
try.c: 0x56543ab2bfa0: v4i64,ch = CopyFromReg 0x56543aa29a00, Register:v4i64 %vreg13
try.c: 0x56543ab30c60: v4i64 = Register %vreg13
try.c: 0x56543aac6eb0: v16i32 = X86ISD::VBROADCAST 0x56543ab30670
try.c: 0x56543ab30670: i32,ch = load<LD4[ConstantPool]> 0x56543aa29a00, 0x56543aac9850, undef:i64
try.c: 0x56543aac9850: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56543aaea480: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56543aae9b00: i64 = undef
try.c: 0x56543ab53aa0: 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: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: i32 = Constant<0>
try.c: 0x56543ab53970: 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:opensslnew

Compiler output

Implementation: T:opensslnew
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: 0x55b22170c380: v4i64 = X86ISD::VTRUNC 0x55b22170c250
try.c: 0x55b22170c250: v16i32 = vselect 0x55b2216f8e60, 0x55b2216aad40, 0x55b22170c120
try.c: 0x55b2216f8e60: v4i1 = X86ISD::PCMPGTM 0x55b2216f09f0, 0x55b2216ec580
try.c: 0x55b2216f09f0: v4i64 = X86ISD::VBROADCAST 0x55b221697ae0
try.c: 0x55b221697ae0: i64,ch = load<LD8[%lsr.iv6971]> 0x55b221601950, 0x55b2216ae490, undef:i64
try.c: 0x55b2216ae490: i64,ch = CopyFromReg 0x55b221601950, Register:i64 %vreg50
try.c: 0x55b2216ec7e0: i64 = Register %vreg50
try.c: 0x55b221698fb0: i64 = undef
try.c: 0x55b2216ec580: v4i64,ch = CopyFromReg 0x55b221601950, Register:v4i64 %vreg13
try.c: 0x55b2216f1240: v4i64 = Register %vreg13
try.c: 0x55b2216aad40: v16i32 = X86ISD::VBROADCAST 0x55b2216f0c50
try.c: 0x55b2216f0c50: i32,ch = load<LD4[ConstantPool]> 0x55b221601950, 0x55b2216970c0, undef:i64
try.c: 0x55b2216970c0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x55b2216dbcb0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x55b221698fb0: i64 = undef
try.c: 0x55b22170c120: 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: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: i32 = Constant<0>
try.c: 0x55b22170bff0: 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:opensslnew

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x559df8592cd0: v4i64 = X86ISD::VTRUNC 0x559df8592ba0
try.c: 0x559df8592ba0: v16i32 = vselect 0x559df858f6b0, 0x559df8533aa0, 0x559df8592a70
try.c: 0x559df858f6b0: v4i1 = X86ISD::PCMPGTM 0x559df858aac0, 0x559df8586650
try.c: 0x559df858aac0: v4i64 = X86ISD::VBROADCAST 0x559df8530c40
try.c: 0x559df8530c40: i64,ch = load<LD8[%lsr.iv6971]> 0x559df849b930, 0x559df857af00, undef:i64
try.c: 0x559df857af00: i64,ch = CopyFromReg 0x559df849b930, Register:i64 %vreg50
try.c: 0x559df85868b0: i64 = Register %vreg50
try.c: 0x559df8532110: i64 = undef
try.c: 0x559df8586650: v4i64,ch = CopyFromReg 0x559df849b930, Register:v4i64 %vreg13
try.c: 0x559df858b310: v4i64 = Register %vreg13
try.c: 0x559df8533aa0: v16i32 = X86ISD::VBROADCAST 0x559df858ad20
try.c: 0x559df858ad20: i32,ch = load<LD4[ConstantPool]> 0x559df849b930, 0x559df852b140, undef:i64
try.c: 0x559df852b140: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x559df84f7d40: i64 = TargetConstantPool<i32 1> 0
try.c: 0x559df8532110: i64 = undef
try.c: 0x559df8592a70: 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: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: i32 = Constant<0>
try.c: 0x559df8592940: 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 ref

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x5621446dfd50: v4i64 = X86ISD::VTRUNC 0x5621446dfc20
try.c: 0x5621446dfc20: v16i32 = vselect 0x5621446ceed0, 0x56214464fb50, 0x5621446dfaf0
try.c: 0x5621446ceed0: v4i1 = X86ISD::PCMPGTM 0x5621446bb340, 0x5621446a8af0
try.c: 0x5621446bb340: v4i64 = X86ISD::VBROADCAST 0x562144650010
try.c: 0x562144650010: i64,ch = load<LD8[%lsr.iv6971]> 0x5621445b5a20, 0x562144669060, undef:i64
try.c: 0x562144669060: i64,ch = CopyFromReg 0x5621445b5a20, Register:i64 %vreg50
try.c: 0x5621446a8d50: i64 = Register %vreg50
try.c: 0x562144665b30: i64 = undef
try.c: 0x5621446a8af0: v4i64,ch = CopyFromReg 0x5621445b5a20, Register:v4i64 %vreg13
try.c: 0x5621446bbb90: v4i64 = Register %vreg13
try.c: 0x56214464fb50: v16i32 = X86ISD::VBROADCAST 0x5621446bb5a0
try.c: 0x5621446bb5a0: i32,ch = load<LD4[ConstantPool]> 0x5621445b5a20, 0x562144667630, undef:i64
try.c: 0x562144667630: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x5621446664b0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x562144665b30: i64 = undef
try.c: 0x5621446dfaf0: 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: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: i32 = Constant<0>
try.c: 0x5621446df9c0: 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 ref

Compiler output

Implementation: ref
Security model: constbranchindex
Compiler: clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: fatal error: error in backend: Cannot select: 0x56502597b2f0: v4i64 = X86ISD::VTRUNC 0x56502597b1c0
try.c: 0x56502597b1c0: v16i32 = vselect 0x565025977cd0, 0x565025916e40, 0x56502597b090
try.c: 0x565025977cd0: v4i1 = X86ISD::PCMPGTM 0x565025960960, 0x56502595c4f0
try.c: 0x565025960960: v4i64 = X86ISD::VBROADCAST 0x56502590d910
try.c: 0x56502590d910: i64,ch = load<LD8[%lsr.iv6971]> 0x565025871960, 0x565025922d20, undef:i64
try.c: 0x565025922d20: i64,ch = CopyFromReg 0x565025871960, Register:i64 %vreg50
try.c: 0x56502595c750: i64 = Register %vreg50
try.c: 0x56502590ede0: i64 = undef
try.c: 0x56502595c4f0: v4i64,ch = CopyFromReg 0x565025871960, Register:v4i64 %vreg13
try.c: 0x5650259611b0: v4i64 = Register %vreg13
try.c: 0x565025916e40: v16i32 = X86ISD::VBROADCAST 0x565025960bc0
try.c: 0x565025960bc0: i32,ch = load<LD4[ConstantPool]> 0x565025871960, 0x56502590caf0, undef:i64
try.c: 0x56502590caf0: i64 = X86ISD::WrapperRIP TargetConstantPool:i64<i32 1> 0
try.c: 0x56502594b6c0: i64 = TargetConstantPool<i32 1> 0
try.c: 0x56502590ede0: i64 = undef
try.c: 0x56502597b090: 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: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: i32 = Constant<0>
try.c: 0x56502597af60: 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 ref