diff options
author | Alfie Richards <alfie.richards@arm.com> | 2025-09-30 12:25:25 +0000 |
---|---|---|
committer | Alfie Richards <alfie.richards@arm.com> | 2025-10-02 08:29:07 +0000 |
commit | 264a575765e0985fdc8a00b16c1d5bb4a46ed4db (patch) | |
tree | b267b8c9de23d847d4d52d1d335a30d8d4d8cfe4 /gcc/cp/contracts.h | |
parent | 8cf1bc6b5d561458bbad85505f59ab85a65932c4 (diff) | |
download | gcc-master.zip gcc-master.tar.gz gcc-master.tar.bz2 |
This patch adds exclusions and diagnostics to prevent function multi-versioning
being used with omp simd pragmas and renaming extensions.
This behaviour is forbidden by the ACLE as the expected behaviour is not clear.
gcc/c-family/ChangeLog:
* c-attribs.cc (attr_target_clones_exclusions): Add simd and omp
exclusions.
(attr_target_version_exclusions): New definition with simd and omp
exclusions.
(attr_omp_declare_simd_exclusions): New definition with target_version
and clones exclusions.
(attr_simd_exclusions): Ditto.
(c_common_gnu_attributes): Add new target_version, simd, and omp
declare simd variables.
gcc/c/ChangeLog:
* c-decl.cc (maybe_mark_function_versioned): Add diagnostic.
* c-parser.cc (c_finish_omp_declare_simd): Add diagnostic.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/mv-error11.c: New test.
* gcc.target/aarch64/mv-error12.c: New test.
Diffstat (limited to 'gcc/cp/contracts.h')
0 files changed, 0 insertions, 0 deletions