From: Alfie Richards <[email protected]> Hi All,
This patch series now only contains the C patches, as the other have been approved and committed. (V11: https://gcc.gnu.org/pipermail/gcc-patches/2025-September/695627.html) The main changes here are the addition of the exclusions with other renaming and cloning extensions. The C target_version support patch, and the patch preventing illeagal extension combinations btoh need review. Bootstrapped and reg tested on Aarch64 and x86. Still hoping for GCC 16 for this, we're keen to get this synced with LLVM before we start pushing it for users. Kind regards, Alfie Alfie Richards (3): c: Add target_version attribute support. c: aarch64: Add FMV diagnostic tests. (Approved https://gcc.gnu.org/pipermail/gcc-patches/2025-July/690690.html) c: fmv: Prevent FMV being combined with other cloning/renaming extensions. gcc/c-family/c-attribs.cc | 30 ++++- gcc/c/c-decl.cc | 118 ++++++++++++++++++ gcc/c/c-parser.cc | 7 ++ gcc/testsuite/gcc.target/aarch64/mv-1.c | 43 +++++++ .../gcc.target/aarch64/mv-and-mvc-error1.c | 9 ++ .../gcc.target/aarch64/mv-and-mvc-error2.c | 9 ++ .../gcc.target/aarch64/mv-and-mvc-error3.c | 8 ++ .../gcc.target/aarch64/mv-and-mvc1.c | 37 ++++++ .../gcc.target/aarch64/mv-and-mvc2.c | 28 +++++ .../gcc.target/aarch64/mv-and-mvc3.c | 40 ++++++ .../gcc.target/aarch64/mv-and-mvc4.c | 37 ++++++ gcc/testsuite/gcc.target/aarch64/mv-error1.c | 18 +++ gcc/testsuite/gcc.target/aarch64/mv-error10.c | 13 ++ gcc/testsuite/gcc.target/aarch64/mv-error11.c | 9 ++ gcc/testsuite/gcc.target/aarch64/mv-error12.c | 13 ++ gcc/testsuite/gcc.target/aarch64/mv-error2.c | 9 ++ gcc/testsuite/gcc.target/aarch64/mv-error3.c | 12 ++ gcc/testsuite/gcc.target/aarch64/mv-error4.c | 9 ++ gcc/testsuite/gcc.target/aarch64/mv-error5.c | 8 ++ gcc/testsuite/gcc.target/aarch64/mv-error6.c | 20 +++ gcc/testsuite/gcc.target/aarch64/mv-error7.c | 11 ++ gcc/testsuite/gcc.target/aarch64/mv-error8.c | 12 ++ gcc/testsuite/gcc.target/aarch64/mv-error9.c | 12 ++ .../gcc.target/aarch64/mv-symbols1.c | 38 ++++++ .../gcc.target/aarch64/mv-symbols10.c | 42 +++++++ .../gcc.target/aarch64/mv-symbols11.c | 16 +++ .../gcc.target/aarch64/mv-symbols12.c | 27 ++++ .../gcc.target/aarch64/mv-symbols13.c | 28 +++++ .../gcc.target/aarch64/mv-symbols14.c | 34 +++++ .../gcc.target/aarch64/mv-symbols2.c | 28 +++++ .../gcc.target/aarch64/mv-symbols3.c | 27 ++++ .../gcc.target/aarch64/mv-symbols4.c | 31 +++++ .../gcc.target/aarch64/mv-symbols5.c | 36 ++++++ .../gcc.target/aarch64/mv-symbols6.c | 20 +++ .../gcc.target/aarch64/mv-symbols7.c | 47 +++++++ .../gcc.target/aarch64/mv-symbols8.c | 47 +++++++ .../gcc.target/aarch64/mv-symbols9.c | 44 +++++++ gcc/testsuite/gcc.target/aarch64/mvc-error1.c | 9 ++ gcc/testsuite/gcc.target/aarch64/mvc-error2.c | 9 ++ .../gcc.target/aarch64/mvc-symbols1.c | 25 ++++ .../gcc.target/aarch64/mvc-symbols2.c | 15 +++ .../gcc.target/aarch64/mvc-symbols3.c | 19 +++ .../gcc.target/aarch64/mvc-symbols4.c | 12 ++ .../gcc.target/aarch64/mvc-warning1.c | 13 ++ 44 files changed, 1076 insertions(+), 3 deletions(-) create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc-error1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc-error2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc-error3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-and-mvc4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error10.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error11.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error12.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error5.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error6.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error7.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error8.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-error9.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols10.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols11.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols12.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols13.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols14.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols5.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols6.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols7.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols8.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mv-symbols9.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-error1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-error2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-symbols1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-symbols2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-symbols3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-symbols4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/mvc-warning1.c -- 2.34.1
