Implementation notes: amd64, trident, crypto_core/aes256decrypt

Computer: trident
Microarchitecture: amd64; Core 2 65nm (6fb)
Architecture: amd64
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20240625
Operation: crypto_core
Primitive: aes256decrypt
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
83211583 0 023712 780 984T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
83311567 0 024664 780 984T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8687403 0 020504 780 984T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
8727419 0 019552 780 984T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
89511646 0 023335 772 984T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9005438 0 017127 772 984T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9095448 0 016083 756 952T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
91111493 0 025656 812 920T:dolbeau/std-4rt-nodkclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9137513 0 018147 756 952T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
91511493 0 024568 812 920T:dolbeau/std-4rt-nodkclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9265422 0 018520 780 984T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
92611493 0 025368 812 920T:dolbeau/std-4rt-nodkclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9285438 0 017568 780 984T:dolbeau/std-1rt-nodkgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9587442 0 019143 772 984T:dolbeau/std-2rt-nodkgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
99211862 0 023558 804 920T:dolbeau/std-4rt-nodkclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
99211595 0 022227 756 952T:dolbeau/std-4rt-nodkgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
100611717 0 022862 804 920T:dolbeau/std-4rt-nodkclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10405498 0 016638 804 920T:dolbeau/std-1rt-nodkclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10405384 0 019256 812 920T:dolbeau/std-1rt-nodkclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10415384 0 019544 812 920T:dolbeau/std-1rt-nodkclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10425384 0 018456 812 920T:dolbeau/std-1rt-nodkclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10427497 0 021672 812 920T:dolbeau/std-2rt-nodkclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10467497 0 020584 812 920T:dolbeau/std-2rt-nodkclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10487497 0 021384 812 920T:dolbeau/std-2rt-nodkclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
10647707 0 018846 804 920T:dolbeau/std-2rt-nodkclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1342138 0 013467 812 952T:opensslgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1356140 0 010934 788 952T:opensslgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1357140 0 014498 828 920T:opensslclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1360139 0 012026 804 952T:opensslgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1362140 0 013410 828 920T:opensslclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1362140 0 011464 820 920T:opensslclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1363140 0 014210 828 920T:opensslclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1365140 0 012000 820 920T:opensslclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
1373138 0 012467 812 952T:opensslgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
13745855 0 017558 804 920T:dolbeau/std-1rt-nodkclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
13807966 0 019670 804 920T:dolbeau/std-2rt-nodkclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
4701625409 0 018560 780 984refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7398033648 0 016712 812 920refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7703187320 0 021184 812 920refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
7710607320 0 021472 812 920refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
9847132092 0 013246 804 920refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
12333432474 0 014158 804 920refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
13410882222 0 014336 780 984refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
14436902206 0 013895 772 984refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625
22250941947 0 012531 756 952refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062620240625

Compiler output


core.c: core.c:72:16: error: always_inline function '_mm_aesimc_si128' requires target feature 'aes', but would be inlined into function 'aes256ni_setkey_decrypt' that is compiled without support for 'aes'
core.c:     rkeys[i] = _mm_aesimc_si128(tkeys[14-i]);
core.c:                ^
core.c: core.c:43:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c:   BLOCK1(0x01);
core.c:   ^
core.c: core.c:24:11: note: expanded from macro 'BLOCK1'
core.c:   temp1 = _mm_aeskeygenassist_si128(temp2, 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:44:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c:   BLOCK2(0x01);
core.c:   ^
core.c: core.c:34:11: note: expanded from macro 'BLOCK2'
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:46:3: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
core.c:   BLOCK1(0x02);
core.c:   ^
core.c: core.c:24:11: note: expanded from macro 'BLOCK1'
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 'aes256ni_setkey_decrypt':
core.c: core.c:70: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
core.c:    70 | #pragma unroll(13)
core.c:       |
core.c: core.c: In function 'aes256ni_decrypt':
core.c: core.c:80: warning: ignoring '#pragma unroll ' [-Wunknown-pragmas]
core.c:    80 | #pragma unroll(13)
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 'aes256ni_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:24:11: note: called from here
core.c:    24 |   temp1 = _mm_aeskeygenassist_si128(temp2, IMM); \
core.c:       |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
core.c: core.c:61:3: note: in expansion of macro 'BLOCK1'
core.c:    61 |   BLOCK1(0x40);
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: /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: ...

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)