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

Reply via email to