Implementation notes: amd64, lucienne, crypto_kem/saber2

Computer: lucienne
Microarchitecture: amd64; Zen 2 (860f81)
Architecture: amd64
CPU ID: AuthenticAMD-00860f81-178bfbff
SUPERCOP version: 20240808
Operation: crypto_kem
Primitive: saber2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
14889742686 0 063336 820 1720T:avx2_nttmulclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
14907450500 0 071304 820 1720T:avx2_nttmulclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
15923258659 0 079704 788 1752T:avx2_nttmulgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
16977666509 0 086952 820 1720T:avx2clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
17053875419 0 095976 820 1720T:avx2clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
17448781954 0 0102880 788 1752T:avx2gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
17740426412 0 044846 812 1720T:avx2_nttmulclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
19306727901 0 046342 812 1720T:avx2clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
19466627871 0 047368 788 1752T:avx2_nttmulgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
20139425868 0 044848 788 1752T:avx2_nttmulgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
20263128488 0 047976 788 1752T:avx2gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
20311826434 0 045174 812 1720T:avx2_nttmulclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
20537825659 0 043568 780 1720T:avx2_nttmulgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
21582227562 0 046576 788 1752T:avx2gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
22174626088 0 044000 780 1720T:avx2gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024081020240808
29991171212 0 091699 828 1720T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
30441454158 0 074483 828 1720T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
36879360710 0 081759 796 1752T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
37412795579 0 0116507 828 1720T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
116394813877 0 032369 820 1720T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
125803613912 0 032705 820 1720T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
126819212509 0 031567 796 1752T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
146794814744 0 034279 796 1752T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
173798712208 0 030183 788 1720T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716

Compiler output


try.c: /usr/bin/ld: libcrypto_kem_saber2.a(SABER_indcpa.o): in function `schoolbook_avx_new3_acc':
try.c: .../supercop-data/lucienne/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_kem/saber2/avx2/work/././polymul/scm_avx.c:40: undefined reference to `mul_add'
try.c: /usr/bin/ld: .../supercop-data/lucienne/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_kem/saber2/avx2/work/././polymul/scm_avx.c:44: undefined reference to `mul_add'
try.c: /usr/bin/ld: .../supercop-data/lucienne/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_kem/saber2/avx2/work/././polymul/scm_avx.c:49: undefined reference to `mul_add'
try.c: /usr/bin/ld: .../supercop-data/lucienne/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_kem/saber2/avx2/work/././polymul/scm_avx.c:50: undefined reference to `mul_add'
try.c: /usr/bin/ld: .../supercop-data/lucienne/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_kem/saber2/avx2/work/././polymul/scm_avx.c:55: undefined reference to `mul_add'
try.c: /usr/bin/ld: libcrypto_kem_saber2.a(SABER_indcpa.o):.../supercop-data/lucienne/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_kem/saber2/avx2/work/././polymul/scm_avx.c:56: more undefined references to `mul_add' follow
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


SABER_indcpa.c: In file included from SABER_indcpa.c:9:
SABER_indcpa.c: In file included from ././polymul/toom-cook_4way.c:6:
SABER_indcpa.c: ././polymul/scm_avx.c:40:13: warning: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
SABER_indcpa.c:         c_avx[0] = mul_add(a0, b0, c_avx[0]);
SABER_indcpa.c:                    ^
SABER_indcpa.c: ././polymul/scm_avx.c:43:9: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new3_acc' that is compiled without support for 'avx2'
SABER_indcpa.c:         temp = _mm256_mullo_epi16 (a0, b1);
SABER_indcpa.c:                ^
SABER_indcpa.c: ././polymul/scm_avx.c:43:9: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
SABER_indcpa.c: ././polymul/scm_avx.c:44:7: warning: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
SABER_indcpa.c:         temp=mul_add(a1, b0, temp);
SABER_indcpa.c:              ^
SABER_indcpa.c: ././polymul/scm_avx.c:45:13: error: always_inline function '_mm256_add_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new3_acc' that is compiled without support for 'avx2'
SABER_indcpa.c:         c_avx[1] = _mm256_add_epi16(temp, c_avx[1]);
SABER_indcpa.c:                    ^
SABER_indcpa.c: ././polymul/scm_avx.c:45:13: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
SABER_indcpa.c: ././polymul/scm_avx.c:48:9: error: always_inline function '_mm256_mullo_epi16' requires target feature 'avx2', but would be inlined into function 'schoolbook_avx_new3_acc' that is compiled without support for 'avx2'
SABER_indcpa.c:         temp = _mm256_mullo_epi16 (a0, b2);
SABER_indcpa.c:                ^
SABER_indcpa.c: ././polymul/scm_avx.c:48:9: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
SABER_indcpa.c: ././polymul/scm_avx.c:49:9: warning: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
SABER_indcpa.c:         temp = mul_add(a1, b1, temp);
SABER_indcpa.c:                ^
SABER_indcpa.c: ././polymul/scm_avx.c:50:7: warning: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
SABER_indcpa.c:         temp=mul_add(a2, b0, temp);
SABER_indcpa.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


poly.c: poly.c:16:23: warning: unused function 'reduce' [-Wunused-function]
poly.c: static inline __m256i reduce(const __m256i a, const __m256i p, const int16_t *pdata) {
poly.c:                       ^
poly.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:avx2_nttmulclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


poly.c: poly.c:31:26: error: always_inline function '_mm256_set1_epi16' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c:   const __m256i u_pinv = _mm256_set1_epi16(CRT_U_PINV);
poly.c:                          ^
poly.c: poly.c:31:26: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
poly.c: poly.c:32:21: error: always_inline function '_mm256_set1_epi16' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c:   const __m256i u = _mm256_set1_epi16(CRT_U);
poly.c:                     ^
poly.c: poly.c:32:21: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
poly.c: poly.c:33:22: error: always_inline function '_mm256_load_si256' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c:   const __m256i p0 = _mm256_load_si256((__m256i *)&PDATA0[_16XP]);
poly.c:                      ^
poly.c: poly.c:33:22: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
poly.c: poly.c:34:22: error: always_inline function '_mm256_load_si256' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c:   const __m256i p1 = _mm256_load_si256((__m256i *)&PDATA1[_16XP]);
poly.c:                      ^
poly.c: poly.c:34:22: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
poly.c: poly.c:35:23: error: always_inline function '_mm256_set1_epi16' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c:   const __m256i mod = _mm256_set1_epi16(KEM_Q-1);
poly.c:                       ^
poly.c: poly.c:35:23: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
poly.c: poly.c:36:30: error: always_inline function '_mm256_load_si256' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c:   const __m256i mont0_pinv = _mm256_load_si256((__m256i *)&PDATA0[_16XMONT_PINV]);
poly.c:                              ^
poly.c: poly.c:36:30: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
poly.c: poly.c:37:25: error: always_inline function '_mm256_load_si256' requires target feature 'avx', but would be inlined into function 'nttmul_poly_crt' that is compiled without support for 'avx'
poly.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:avx2_nttmulclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Namespace violations


SABER_indcpa.o BS2POLq T
SABER_indcpa.o GenMatrix T
SABER_indcpa.o GenSecret T
SABER_indcpa.o KARA_eval T
SABER_indcpa.o KARA_interpol T
SABER_indcpa.o POL2MSG T
SABER_indcpa.o TC_eval T
SABER_indcpa.o TC_interpol T
SABER_indcpa.o batch_64coefficient_multiplications_new T
SABER_indcpa.o indcpa_kem_dec T
SABER_indcpa.o indcpa_kem_enc T
SABER_indcpa.o indcpa_kem_keypair T
SABER_indcpa.o matrix_vector_mul T
SABER_indcpa.o schoolbook_avx_new2 T
SABER_indcpa.o schoolbook_avx_new3_acc T
SABER_indcpa.o toom_cook_4way_avx_n1 T
SABER_indcpa.o transpose_n1 T
SABER_indcpa.o vector_vector_mul T
cbd.o cbd T
fips202.o KeccakF1600_StatePermute T
fips202.o cshake128_simple T
fips202.o cshake128_simple_absorb T
fips202.o cshake128_simple_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
pack_unpack.o BS2POLVEC T
pack_unpack.o BS2POLVECp T
pack_unpack.o BS2POLVECq T
pack_unpack.o POLVEC2BS T
pack_unpack.o POLVECp2BS T
pack_unpack.o POLVECq2BS T
pack_unpack.o SABER_pack10bit T
pack_unpack.o SABER_pack11bit T
pack_unpack.o SABER_pack13bit T
pack_unpack.o SABER_pack14bit T
pack_unpack.o SABER_pack_3bit T
pack_unpack.o SABER_pack_4bit T
pack_unpack.o SABER_pack_6bit T
pack_unpack.o SABER_poly_un_pack13bit T
pack_unpack.o SABER_un_pack10bit T
pack_unpack.o SABER_un_pack11bit T
pack_unpack.o SABER_un_pack13bit T
pack_unpack.o SABER_un_pack14bit T
pack_unpack.o SABER_un_pack3bit T
pack_unpack.o SABER_un_pack4bit T
pack_unpack.o SABER_un_pack6bit T
poly.o poly_getnoise T
verify.o cmov T
verify.o verify T

Number of similar (implementation,compiler) pairs: 7, namely:
ImplementationCompiler
T:avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx2gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx2gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx2gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Namespace violations


SABER_indcpa.o GenMatrix T
SABER_indcpa.o GenSecret T
SABER_indcpa.o indcpa_kem_dec T
SABER_indcpa.o indcpa_kem_enc T
SABER_indcpa.o indcpa_kem_keypair T
basemul256x1.o nttmul_poly_basemul_montgomery T
basemul256x1.o nttmul_polyvec_basemul_acc_montgomery T
cbd.o cbd T
consts256n10753.o nttmul_pdata10753 R
consts256n7681.o nttmul_pdata7681 R
fips202.o KeccakF1600_StatePermute T
fips202.o cshake128_simple T
fips202.o cshake128_simple_absorb T
fips202.o cshake128_simple_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
invntt256n.o nttmul_poly_invntt_tomont T
ntt256n.o nttmul_poly_ntt T
pack_unpack.o BS2POLT T
pack_unpack.o BS2POLVEC T
pack_unpack.o BS2POLVECp T
pack_unpack.o BS2POLVECq T
pack_unpack.o BS2POLq T
pack_unpack.o POL2MSG T
pack_unpack.o POLT2BS T
pack_unpack.o POLVEC2BS T
pack_unpack.o POLVECp2BS T
pack_unpack.o POLVECq2BS T
poly.o nttmul_poly_add T
poly.o nttmul_poly_crt T
poly.o nttmul_poly_mul T
poly.o nttmul_poly_sub T
polyvec.o nttmul_polyvec_crt T
polyvec.o nttmul_polyvec_invntt_tomont T
polyvec.o nttmul_polyvec_iprod T
polyvec.o nttmul_polyvec_iprod2 T
polyvec.o nttmul_polyvec_matrix_vector_mul T
polyvec.o nttmul_polyvec_matrix_vector_mul2 T
polyvec.o nttmul_polyvec_ntt T
verify.o cmov T
verify.o verify T

Number of similar (implementation,compiler) pairs: 8, namely:
ImplementationCompiler
T:avx2_nttmulclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:avx2_nttmulgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx2_nttmulgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx2_nttmulgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:avx2_nttmulgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Namespace violations


SABER_indcpa.o GenMatrix T
SABER_indcpa.o InnerProd T
SABER_indcpa.o MatrixVectorMul T
SABER_indcpa.o POL2MSG T
SABER_indcpa.o indcpa_kem_dec T
SABER_indcpa.o indcpa_kem_enc T
SABER_indcpa.o indcpa_kem_keypair T
SABER_indcpa.o karatsuba_simple T
SABER_indcpa.o pol_mul T
SABER_indcpa.o print_poly2 T
SABER_indcpa.o reduce T
SABER_indcpa.o toom_cook_4way T
cbd.o cbd T
fips202.o KeccakF1600_StatePermute T
fips202.o cshake128_simple T
fips202.o cshake128_simple_absorb T
fips202.o cshake128_simple_squeezeblocks T
fips202.o sha3_256 T
fips202.o sha3_512 T
fips202.o shake128 T
pack_unpack.o BS2POL T
pack_unpack.o BS2POLVEC T
pack_unpack.o BS2POLVECp T
pack_unpack.o BS2POLVECq T
pack_unpack.o POLVEC2BS T
pack_unpack.o POLVECp2BS T
pack_unpack.o POLVECq2BS T
pack_unpack.o SABER_pack_3bit T
pack_unpack.o SABER_pack_4bit T
pack_unpack.o SABER_pack_6bit T
pack_unpack.o SABER_un_pack3bit T
pack_unpack.o SABER_un_pack4bit T
pack_unpack.o SABER_un_pack6bit T
poly.o GenSecret T
verify.o cmov T
verify.o verify T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)