Implementation notes: amd64, trident, crypto_core/aes128decrypt

Computer: trident
Microarchitecture: amd64; Core 2 65nm (6fb)
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_core
Primitive: aes128decrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
63412204 0 025304 780 984T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
64611524 0 023648 780 984T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
67711595 0 023287 772 984T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
6795354 0 017488 780 984T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
6825396 0 016019 756 952T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
6836083 0 019176 780 984T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
6908082 0 021176 780 984T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7045360 0 017063 772 984T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7057466 0 018099 756 952T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
71312188 0 026360 812 920T:dolbeau/std-4rt-nodkclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7147381 0 019504 780 984T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
71712188 0 026072 812 920T:dolbeau/std-4rt-nodkclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7307408 0 019111 772 984T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
73011492 0 024568 812 920T:dolbeau/std-4rt-nodkclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7455356 0 018440 812 920T:dolbeau/std-1rt-nodkclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
75211563 0 022195 756 952T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7615446 0 016590 804 920T:dolbeau/std-1rt-nodkclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
76711862 0 023558 804 920T:dolbeau/std-4rt-nodkclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
76911673 0 022814 804 920T:dolbeau/std-4rt-nodkclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7786073 0 019960 812 920T:dolbeau/std-1rt-nodkclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7846073 0 020248 812 920T:dolbeau/std-1rt-nodkclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7937598 0 018734 804 920T:dolbeau/std-2rt-nodkclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7957514 0 020600 812 920T:dolbeau/std-2rt-nodkclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8008198 0 022360 812 920T:dolbeau/std-2rt-nodkclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8068198 0 022072 812 920T:dolbeau/std-2rt-nodkclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
992140 0 014194 828 920T:opensslclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1009140 0 010934 788 952T:opensslgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1012140 0 011448 820 920T:opensslclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1012139 0 012010 804 952T:opensslgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1013138 0 012451 812 952T:opensslgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1018138 0 013451 812 952T:opensslgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1021140 0 011984 820 920T:opensslclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10235855 0 017558 804 920T:dolbeau/std-1rt-nodkclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1027140 0 014482 828 920T:opensslclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1028140 0 013394 828 920T:opensslclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10367966 0 019670 804 920T:dolbeau/std-2rt-nodkclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
3402305798 0 018920 780 984refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5274503168 0 016216 812 920refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5552616168 0 020304 812 920refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
5552646168 0 020016 812 920refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8850452362 0 014030 804 920refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9033882015 0 013142 804 920refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9540952195 0 014296 780 984refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9983702133 0 013799 772 984refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
16420271854 0 012435 756 952refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


core.c: core.c:13:25: warning: unused variable 'temp2' [-Wunused-variable]
core.c:   __m128i temp0, temp1, temp2, temp4;
core.c:                         ^
core.c: core.c:49:16: error: always_inline function '_mm_aesimc_si128' requires target feature 'aes', but would be inlined into function 'aes128ni_setkey_decrypt' that is compiled without support for 'aes'
core.c:     rkeys[i] = _mm_aesimc_si128(tkeys[10-i]);
core.c:                ^
core.c: core.c:29:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c:   BLOCK1(0x01);
core.c:   ^
core.c: core.c:20:11: note: expanded from macro 'BLOCK1'
core.c:   temp1 = _mm_aeskeygenassist_si128(temp0, IMM);        \
core.c:           ^
core.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
core.c:   (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
core.c:            ^
core.c: core.c:30:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c:   BLOCK1(0x02);
core.c:   ^
core.c: core.c:20:11: note: expanded from macro 'BLOCK1'
core.c:   temp1 = _mm_aeskeygenassist_si128(temp0, IMM);        \
core.c:           ^
core.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_aes.h:136:12: note: expanded from macro '_mm_aeskeygenassist_si128'
core.c:   (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
core.c:            ^
core.c: core.c:31:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
dolbeau/aesenc-intclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
dolbeau/aesenc-intclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
dolbeau/aesenc-intclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
dolbeau/aesenc-intclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
dolbeau/aesenc-intclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


core.c: core.c: In function 'aes128ni_setkey_encrypt':
core.c: core.c:13:25: warning: unused variable 'temp2' [-Wunused-variable]
core.c:    13 |   __m128i temp0, temp1, temp2, temp4;
core.c:       |                         ^~~~~
core.c: core.c: In function 'aes128ni_setkey_decrypt':
core.c: core.c:47: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
core.c:    47 | #pragma unroll(9)
core.c:       |
core.c: core.c: In function 'aes128ni_decrypt':
core.c: core.c:57: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
core.c:    57 | #pragma unroll(9)
core.c:       |
core.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
core.c:                  from core.c:9:
core.c: core.c: In function 'aes128ni_setkey_encrypt':
core.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/wmmintrin.h:87:1: error: inlining failed in call to 'always_inline' '_mm_aeskeygenassist_si128': target specific option mismatch
core.c:    87 | _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
core.c:       | ^~~~~~~~~~~~~~~~~~~~~~~~~
core.c: core.c:20:11: note: called from here
core.c:    20 |   temp1 = _mm_aeskeygenassist_si128(temp0, IMM);        \
core.c:       |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: core.c:38:3: note: in expansion of macro 'BLOCK1'
core.c:    38 |   BLOCK1(0x36);
core.c:       |   ^~~~~~
core.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:39,
core.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
dolbeau/aesenc-intgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
dolbeau/aesenc-intgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
dolbeau/aesenc-intgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
dolbeau/aesenc-intgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


core.c: In file included from core.c:9:
core.c: stdaes-common.h:548:21: warning: 'KT3' defined but not used [-Wunused-variable]
core.c:   548 | static unsigned int KT3[256] = KT0Data;
core.c:       |                     ^~~
core.c: stdaes-common.h:541:21: warning: 'KT2' defined but not used [-Wunused-variable]
core.c:   541 | static unsigned int KT2[256] = KT0Data;
core.c:       |                     ^~~
core.c: stdaes-common.h:534:21: warning: 'KT1' defined but not used [-Wunused-variable]
core.c:   534 | static unsigned int KT1[256] = KT0Data;
core.c:       |                     ^~~
core.c: stdaes-common.h:450:21: warning: 'RT3' defined but not used [-Wunused-variable]
core.c:   450 | static unsigned int RT3[256] = { RT };
core.c:       |                     ^~~
core.c: stdaes-common.h:443:21: warning: 'RT2' defined but not used [-Wunused-variable]
core.c:   443 | static unsigned int RT2[256] = { RT };
core.c:       |                     ^~~
core.c: stdaes-common.h:436:21: warning: 'RT1' defined but not used [-Wunused-variable]
core.c:   436 | static unsigned int RT1[256] = { RT };
core.c:       |                     ^~~
core.c: stdaes-common.h:108:21: warning: 'FT3' defined but not used [-Wunused-variable]
core.c:   108 | static unsigned int FT3[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:100:21: warning: 'FT2' defined but not used [-Wunused-variable]
core.c:   100 | static unsigned int FT2[256] = { FT };
core.c:       |                     ^~~
core.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:dolbeau/std-1rt-nodkgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-1rt-nodkgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-1rt-nodkgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-1rt-nodkgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


core.c: In file included from core.c:9:
core.c: stdaes-common.h:548:21: warning: 'KT3' defined but not used [-Wunused-variable]
core.c:   548 | static unsigned int KT3[256] = KT0Data;
core.c:       |                     ^~~
core.c: stdaes-common.h:541:21: warning: 'KT2' defined but not used [-Wunused-variable]
core.c:   541 | static unsigned int KT2[256] = KT0Data;
core.c:       |                     ^~~
core.c: stdaes-common.h:450:21: warning: 'RT3' defined but not used [-Wunused-variable]
core.c:   450 | static unsigned int RT3[256] = { RT };
core.c:       |                     ^~~
core.c: stdaes-common.h:443:21: warning: 'RT2' defined but not used [-Wunused-variable]
core.c:   443 | static unsigned int RT2[256] = { RT };
core.c:       |                     ^~~
core.c: stdaes-common.h:108:21: warning: 'FT3' defined but not used [-Wunused-variable]
core.c:   108 | static unsigned int FT3[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:100:21: warning: 'FT2' defined but not used [-Wunused-variable]
core.c:   100 | static unsigned int FT2[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:92:21: warning: 'FT1' defined but not used [-Wunused-variable]
core.c:    92 | static unsigned int FT1[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:84:21: warning: 'FT0' defined but not used [-Wunused-variable]
core.c:    84 | static unsigned int FT0[256] = { FT };
core.c:       |                     ^~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:dolbeau/std-2rt-nodkgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-2rt-nodkgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-2rt-nodkgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-2rt-nodkgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


core.c: In file included from core.c:9:
core.c: stdaes-common.h:108:21: warning: 'FT3' defined but not used [-Wunused-variable]
core.c:   108 | static unsigned int FT3[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:100:21: warning: 'FT2' defined but not used [-Wunused-variable]
core.c:   100 | static unsigned int FT2[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:92:21: warning: 'FT1' defined but not used [-Wunused-variable]
core.c:    92 | static unsigned int FT1[256] = { FT };
core.c:       |                     ^~~
core.c: stdaes-common.h:84:21: warning: 'FT0' defined but not used [-Wunused-variable]
core.c:    84 | static unsigned int FT0[256] = { FT };
core.c:       |                     ^~~

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:dolbeau/std-4rt-nodkgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-4rt-nodkgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-4rt-nodkgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:dolbeau/std-4rt-nodkgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


core.c: core.c:55:17: warning: unused variable 'result' [-Wunused-variable]
core.c:   unsigned char result;
core.c:                 ^
core.c: 1 warning generated.

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

Compiler output


core.c: core.c: In function 'bytesub':
core.c: core.c:55:17: warning: unused variable 'result' [-Wunused-variable]
core.c:    55 |   unsigned char result;
core.c:       |                 ^~~~~~

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

Passed TIMECOP


TIMECOP iterations: 1

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