On Sat, Sep 5, 2026 at 12:08 PM Jakit Liang <[email protected]> wrote: > > This series backports Arrow Lake and Arrow Lake-S x86 enablement from GCC 14 > to > GCC 13 release branch code.
I think this missed the deadline by a week or so. Right now GCC 13 branch is frozen for the last release and only release managers can approve patches for it. > > Changes in v2: > - Drop non-upstream helper artifacts under contrib/: > - contrib/arrowlake-backport-gap-report.md > - contrib/verify-arrowlake-backport.sh > - Keep the functional backport/tests/doc updates unchanged. > > Scope: > - Add -march/-mtune Arrow Lake and Arrow Lake-S CPU handling. > - Backport AVXVNNIINT16, SM3, SM4 and SHA512 i386 backend/intrinsic support. > - Add missing invoke.texi option index/documentation entries. > - Fix SM3 immediate-argument compatibility in umbrella tests. > > Testing: > - Targeted i386 tests for arrowlake/arrowlake-s feature and intrinsic coverage > pass with the same GCC 13 build tree used during validation. > > Notes: > - All commits are DCO-signed. > - I do not have GCC write access; if this series is approved, please help > commit. > > Jakit Liang (5): > i386: Backport Arrow Lake CPU and -march/-mtune support from GCC 14 > i386: Backport AVXVNNIINT16/SM3/SM4/SHA512 support for Arrow Lake > targets > doc/i386: Document Arrow Lake extension switches in invoke.texi > testsuite/i386: Fix SM3 immediate override in avx-1 umbrella test > testsuite/i386: Fix SM3 immediate override in sse umbrella tests > > gcc/common/config/i386/cpuinfo.h | 26 +++ > gcc/common/config/i386/i386-common.cc | 87 ++++++++-- > gcc/common/config/i386/i386-cpuinfo.h | 6 + > gcc/common/config/i386/i386-isas.h | 5 + > gcc/config.gcc | 3 +- > gcc/config/i386/avxvnniint16intrin.h | 138 ++++++++++++++ > gcc/config/i386/cpuid.h | 20 ++ > gcc/config/i386/driver-i386.cc | 9 +- > gcc/config/i386/i386-builtin-types.def | 6 + > gcc/config/i386/i386-builtin.def | 30 +++ > gcc/config/i386/i386-c.cc | 22 +++ > gcc/config/i386/i386-expand.cc | 3 + > gcc/config/i386/i386-isa.def | 4 + > gcc/config/i386/i386-options.cc | 15 +- > gcc/config/i386/i386.h | 6 + > gcc/config/i386/i386.opt | 20 ++ > gcc/config/i386/immintrin.h | 8 + > gcc/config/i386/sha512intrin.h | 64 +++++++ > gcc/config/i386/sm3intrin.h | 72 ++++++++ > gcc/config/i386/sm4intrin.h | 70 ++++++++ > gcc/config/i386/sse.md | 180 +++++++++++++++++++ > gcc/doc/invoke.texi | 30 +++ > gcc/testsuite/g++.target/i386/mv16.C | 12 ++ > gcc/testsuite/gcc.target/i386/arrowlake-1.c | 24 +++ > gcc/testsuite/gcc.target/i386/arrowlake-2.c | 36 ++++ > gcc/testsuite/gcc.target/i386/arrowlake-3.c | 16 ++ > gcc/testsuite/gcc.target/i386/avx-1.c | 3 + > .../gcc.target/i386/avxvnniint16-1.c | 41 ++++ > .../gcc.target/i386/builtin_target.c | 14 ++ > gcc/testsuite/gcc.target/i386/funcspec-56.inc | 8 + > gcc/testsuite/gcc.target/i386/sha512-1.c | 18 ++ > gcc/testsuite/gcc.target/i386/sm3-1.c | 17 ++ > gcc/testsuite/gcc.target/i386/sm4-1.c | 20 ++ > gcc/testsuite/gcc.target/i386/sse-13.c | 3 + > gcc/testsuite/gcc.target/i386/sse-23.c | 3 + > gcc/testsuite/lib/target-supports.exp | 55 ++++++ > 36 files changed, 1089 insertions(+), 5 deletions(-) > create mode 100644 gcc/config/i386/avxvnniint16intrin.h > create mode 100644 gcc/config/i386/sha512intrin.h > create mode 100644 gcc/config/i386/sm3intrin.h > create mode 100644 gcc/config/i386/sm4intrin.h > create mode 100644 gcc/testsuite/gcc.target/i386/arrowlake-1.c > create mode 100644 gcc/testsuite/gcc.target/i386/arrowlake-2.c > create mode 100644 gcc/testsuite/gcc.target/i386/arrowlake-3.c > create mode 100644 gcc/testsuite/gcc.target/i386/avxvnniint16-1.c > create mode 100644 gcc/testsuite/gcc.target/i386/sha512-1.c > create mode 100644 gcc/testsuite/gcc.target/i386/sm3-1.c > create mode 100644 gcc/testsuite/gcc.target/i386/sm4-1.c > > -- > 2.47.3
