Implementation notes: amd64, speed2supercop, crypto_sign/donald2048

Computer: speed2supercop
Microarchitecture: amd64; Haswell+AES (306c3)
Architecture: amd64
CPU ID: GenuineIntel-000306c3-1fc9cbf5
SUPERCOP version: 20240625
Operation: crypto_sign
Primitive: donald2048
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
26056083165 0 022571 936 1600T:opensslnewgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26099923350 0 026387 944 1632T:opensslnewgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26117683672 0 024093 968 1568T:opensslnewclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26118483254 0 027653 968 1600T:opensslnewclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26150564153 0 024915 944 1632T:opensslnewgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26176723254 0 027829 968 1600T:opensslnewclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26176963350 0 024387 944 1632T:opensslnewgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26188123274 0 026245 968 1568T:opensslnewclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
26245363221 0 024358 960 1632T:opensslnewclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
279198850092 12080 3921691454 153592 11224T:cryptoppclang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
279346076912 10096 4401704053 151696 11352T:cryptoppg++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
279358463084 12080 3921713918 153584 11192T:cryptoppclang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
279607259406 12080 3921708074 153584 11192T:cryptoppclang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
279776462390 16112 3921718430 157280 11160T:cryptoppclang++_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
279985248605 24176 4401697893 165696 11320T:cryptoppg++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
280093679929 9704 4401706761 151480 11352T:cryptoppg++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625
280681261023 10080 4401688756 151696 11352T:cryptoppg++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024070420240625

Compiler output


keypair.c: keypair.c:12:7: warning: 'DSA_new' is deprecated [-Wdeprecated-declarations]
keypair.c:   x = DSA_new();
keypair.c:       ^
keypair.c: /usr/include/openssl/dsa.h:130:1: note: 'DSA_new' has been explicitly marked deprecated here
keypair.c: OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
keypair.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
keypair.c:                                                 ^
keypair.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
keypair.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
keypair.c:                                                    ^
keypair.c: keypair.c:18:4: error: incomplete definition of type 'struct dsa_st'
keypair.c:   x->p = BN_new(); if (!x->p) goto error;
keypair.c:   ~^
keypair.c: /usr/include/openssl/types.h:141:16: note: forward declaration of 'struct dsa_st'
keypair.c: typedef struct dsa_st DSA;
keypair.c:                ^
keypair.c: keypair.c:18:26: error: incomplete definition of type 'struct dsa_st'
keypair.c:   x->p = BN_new(); if (!x->p) goto error;
keypair.c:                         ~^
keypair.c: /usr/include/openssl/types.h:141:16: note: forward declaration of 'struct dsa_st'
keypair.c: typedef struct dsa_st DSA;
keypair.c:                ^
keypair.c: keypair.c:19:4: error: incomplete definition of type 'struct dsa_st'
keypair.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:opensslclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


keypair.c: keypair.c: In function 'crypto_sign_donald2048_openssl_timingleaks_keypair':
keypair.c: keypair.c:12:3: warning: 'DSA_new' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c:    12 |   x = DSA_new();
keypair.c:       |   ^
keypair.c: In file included from keypair.c:2:
keypair.c: /usr/include/openssl/dsa.h:130:28: note: declared here
keypair.c:   130 | OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c:       |                            ^~~~~~~
keypair.c: keypair.c:18:4: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c:    18 |   x->p = BN_new(); if (!x->p) goto error;
keypair.c:       |    ^~
keypair.c: keypair.c:18:26: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c:    18 |   x->p = BN_new(); if (!x->p) goto error;
keypair.c:       |                          ^~
keypair.c: keypair.c:19:4: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c:    19 |   x->q = BN_new(); if (!x->q) goto error;
keypair.c:       |    ^~
keypair.c: keypair.c:19:26: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c:    19 |   x->q = BN_new(); if (!x->q) goto error;
keypair.c:       |                          ^~
keypair.c: keypair.c:20:4: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c:    20 |   x->g = BN_new(); if (!x->g) goto error;
keypair.c:       |    ^~
keypair.c: keypair.c:20:26: error: invalid use of incomplete typedef 'DSA' {aka 'struct dsa_st'}
keypair.c:    20 |   x->g = BN_new(); if (!x->g) goto error;
keypair.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:opensslgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opensslgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opensslgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opensslgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)

Compiler output


keypair.c: keypair.c:20:7: warning: 'DSA_new' is deprecated [-Wdeprecated-declarations]
keypair.c:   x = DSA_new(); if (!x) goto error;
keypair.c:       ^
keypair.c: /usr/include/openssl/dsa.h:130:1: note: 'DSA_new' has been explicitly marked deprecated here
keypair.c: OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
keypair.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
keypair.c:                                                 ^
keypair.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
keypair.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
keypair.c:                                                    ^
keypair.c: keypair.c:29:8: warning: 'DSA_set0_pqg' is deprecated [-Wdeprecated-declarations]
keypair.c:   if (!DSA_set0_pqg(x,p,q,g)) goto error;
keypair.c:        ^
keypair.c: /usr/include/openssl/dsa.h:208:1: note: 'DSA_set0_pqg' has been explicitly marked deprecated here
keypair.c: OSSL_DEPRECATEDIN_3_0 int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
keypair.c: ^
keypair.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
keypair.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
keypair.c:                                                 ^
keypair.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
keypair.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
keypair.c:                                                    ^
keypair.c: keypair.c:32:8: warning: 'DSA_generate_key' is deprecated [-Wdeprecated-declarations]
keypair.c: ...
signatureofshorthash.c: signatureofshorthash.c:39:7: warning: 'DSA_new' is deprecated [-Wdeprecated-declarations]
signatureofshorthash.c:   x = DSA_new(); if (!x) goto error;
signatureofshorthash.c:       ^
signatureofshorthash.c: /usr/include/openssl/dsa.h:130:1: note: 'DSA_new' has been explicitly marked deprecated here
signatureofshorthash.c: OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
signatureofshorthash.c: ^
signatureofshorthash.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
signatureofshorthash.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
signatureofshorthash.c:                                                 ^
signatureofshorthash.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
signatureofshorthash.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
signatureofshorthash.c:                                                    ^
signatureofshorthash.c: signatureofshorthash.c:41:8: warning: 'DSA_set0_pqg' is deprecated [-Wdeprecated-declarations]
signatureofshorthash.c:   if (!DSA_set0_pqg(x,p,q,g)) goto error;
signatureofshorthash.c:        ^
signatureofshorthash.c: /usr/include/openssl/dsa.h:208:1: note: 'DSA_set0_pqg' has been explicitly marked deprecated here
signatureofshorthash.c: OSSL_DEPRECATEDIN_3_0 int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
signatureofshorthash.c: ^
signatureofshorthash.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
signatureofshorthash.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
signatureofshorthash.c:                                                 ^
signatureofshorthash.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
signatureofshorthash.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
signatureofshorthash.c:                                                    ^
signatureofshorthash.c: signatureofshorthash.c:51:8: warning: 'DSA_set0_key' is deprecated [-Wdeprecated-declarations]
signatureofshorthash.c: ...
verification.c: verification.c:37:7: warning: 'DSA_new' is deprecated [-Wdeprecated-declarations]
verification.c:   x = DSA_new(); if (!x) goto error;
verification.c:       ^
verification.c: /usr/include/openssl/dsa.h:130:1: note: 'DSA_new' has been explicitly marked deprecated here
verification.c: OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
verification.c: ^
verification.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
verification.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
verification.c:                                                 ^
verification.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
verification.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
verification.c:                                                    ^
verification.c: verification.c:38:8: warning: 'DSA_set0_pqg' is deprecated [-Wdeprecated-declarations]
verification.c:   if (!DSA_set0_pqg(x,p,q,g)) goto error;
verification.c:        ^
verification.c: /usr/include/openssl/dsa.h:208:1: note: 'DSA_set0_pqg' has been explicitly marked deprecated here
verification.c: OSSL_DEPRECATEDIN_3_0 int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
verification.c: ^
verification.c: /usr/include/openssl/macros.h:194:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
verification.c: #   define OSSL_DEPRECATEDIN_3_0                OSSL_DEPRECATED(3.0)
verification.c:                                                 ^
verification.c: /usr/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
verification.c: #     define OSSL_DEPRECATED(since) __attribute__((deprecated))
verification.c:                                                    ^
verification.c: verification.c:44:8: warning: 'DSA_set0_key' is deprecated [-Wdeprecated-declarations]
verification.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:opensslnewclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslnewclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslnewclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslnewclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))
T:opensslnewclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_16.0.6_(27+b1))

Compiler output


keypair.c: keypair.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_keypair':
keypair.c: keypair.c:20:3: warning: 'DSA_new' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c:    20 |   x = DSA_new(); if (!x) goto error;
keypair.c:       |   ^
keypair.c: In file included from keypair.c:2:
keypair.c: /usr/include/openssl/dsa.h:130:28: note: declared here
keypair.c:   130 | OSSL_DEPRECATEDIN_3_0 DSA *DSA_new(void);
keypair.c:       |                            ^~~~~~~
keypair.c: keypair.c:29:3: warning: 'DSA_set0_pqg' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c:    29 |   if (!DSA_set0_pqg(x,p,q,g)) goto error;
keypair.c:       |   ^~
keypair.c: /usr/include/openssl/dsa.h:208:27: note: declared here
keypair.c:   208 | OSSL_DEPRECATEDIN_3_0 int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g);
keypair.c:       |                           ^~~~~~~~~~~~
keypair.c: keypair.c:32:3: warning: 'DSA_generate_key' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c:    32 |   if (!DSA_generate_key(x)) goto error;
keypair.c:       |   ^~
keypair.c: /usr/include/openssl/dsa.h:179:27: note: declared here
keypair.c:   179 | OSSL_DEPRECATEDIN_3_0 int DSA_generate_key(DSA *a);
keypair.c:       |                           ^~~~~~~~~~~~~~~~
keypair.c: keypair.c:34:3: warning: 'DSA_get0_pub_key' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
keypair.c:    34 |   z = DSA_get0_pub_key(x);
keypair.c:       |   ^
keypair.c: /usr/include/openssl/dsa.h:216:37: note: declared here
keypair.c:   216 | OSSL_DEPRECATEDIN_3_0 const BIGNUM *DSA_get0_pub_key(const DSA *d);
keypair.c: ...
signatureofshorthash.c: signatureofshorthash.c:10:19: warning: argument 1 of type 'unsigned char[40]' with mismatched bound [-Warray-parameter=]
signatureofshorthash.c:    10 |     unsigned char sm[SIGNATURE_BYTES],unsigned long long *smlen,
signatureofshorthash.c:       |     ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
signatureofshorthash.c: In file included from signatureofshorthash.c:7:
signatureofshorthash.c: short.h:7:33: note: previously declared as 'unsigned char *'
signatureofshorthash.c:     7 | extern int signatureofshorthash(unsigned char *,unsigned long long *,
signatureofshorthash.c:       |                                 ^~~~~~~~~~~~~~~
signatureofshorthash.c: signatureofshorthash.c:11:25: warning: argument 3 of type 'const unsigned char[64]' with mismatched bound [-Warray-parameter=]
signatureofshorthash.c:    11 |     const unsigned char m[SHORTHASH_BYTES],const unsigned long long mlen,
signatureofshorthash.c:       |     ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
signatureofshorthash.c: short.h:8:3: note: previously declared as 'const unsigned char *'
signatureofshorthash.c:     8 |   const unsigned char *,unsigned long long,
signatureofshorthash.c:       |   ^~~~~~~~~~~~~~~~~~~~~
signatureofshorthash.c: signatureofshorthash.c:12:25: warning: argument 5 of type 'const unsigned char[276]' with mismatched bound [-Warray-parameter=]
signatureofshorthash.c:    12 |     const unsigned char sk[SECRETKEY_BYTES],const unsigned long long sklen
signatureofshorthash.c:       |     ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
signatureofshorthash.c: short.h:9:3: note: previously declared as 'const unsigned char *'
signatureofshorthash.c:     9 |   const unsigned char *,unsigned long long);
signatureofshorthash.c:       |   ^~~~~~~~~~~~~~~~~~~~~
signatureofshorthash.c: signatureofshorthash.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_signatureofshorthash':
signatureofshorthash.c: signatureofshorthash.c:39:3: warning: 'DSA_new' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
signatureofshorthash.c:    39 |   x = DSA_new(); if (!x) goto error;
signatureofshorthash.c:       |   ^
signatureofshorthash.c: In file included from signatureofshorthash.c:2:
signatureofshorthash.c: /usr/include/openssl/dsa.h:130:28: note: declared here
signatureofshorthash.c: ...
verification.c: verification.c:9:25: warning: argument 1 of type 'const unsigned char[64]' with mismatched bound [-Warray-parameter=]
verification.c:     9 |     const unsigned char m[SHORTHASH_BYTES],const unsigned long long mlen,
verification.c:       |     ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
verification.c: In file included from verification.c:6:
verification.c: short.h:10:25: note: previously declared as 'const unsigned char *'
verification.c:    10 | extern int verification(const unsigned char *,unsigned long long,
verification.c:       |                         ^~~~~~~~~~~~~~~~~~~~~
verification.c: verification.c:10:25: warning: argument 3 of type 'const unsigned char[40]' with mismatched bound [-Warray-parameter=]
verification.c:    10 |     const unsigned char sm[SIGNATURE_BYTES],const unsigned long long smlen,
verification.c:       |     ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
verification.c: short.h:11:3: note: previously declared as 'const unsigned char *'
verification.c:    11 |   const unsigned char *,unsigned long long,
verification.c:       |   ^~~~~~~~~~~~~~~~~~~~~
verification.c: verification.c:11:25: warning: argument 5 of type 'const unsigned char[256]' with mismatched bound [-Warray-parameter=]
verification.c:    11 |     const unsigned char pk[PUBLICKEY_BYTES],const unsigned long long pklen
verification.c:       |     ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
verification.c: short.h:12:3: note: previously declared as 'const unsigned char *'
verification.c:    12 |   const unsigned char *,unsigned long long);
verification.c:       |   ^~~~~~~~~~~~~~~~~~~~~
verification.c: verification.c: In function 'crypto_sign_donald2048_opensslnew_timingleaks_verification':
verification.c: verification.c:37:3: warning: 'DSA_new' is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
verification.c:    37 |   x = DSA_new(); if (!x) goto error;
verification.c:       |   ^
verification.c: In file included from verification.c:2:
verification.c: /usr/include/openssl/dsa.h:130:28: note: declared here
verification.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:opensslnewgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opensslnewgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opensslnewgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)
T:opensslnewgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (13.3.0)