public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Earnshaw <rearnsha@arm.com>
To: gcc-patches@gcc.gnu.org
Cc: Richard Earnshaw <rearnsha@arm.com>
Subject: [committed 12/22] arm: testsuite: improve compatibility of pragma_arch_attribute*.c
Date: Mon, 13 Nov 2023 14:26:48 +0000	[thread overview]
Message-ID: <20231113142658.69039-13-rearnsha@arm.com> (raw)
In-Reply-To: <20231113142658.69039-1-rearnsha@arm.com>

[-- Attachment #1: Type: text/plain, Size: 838 bytes --]


These tests use pragmas adn attributes to change the architecture.
Sometimes they simply add a feature using "+crc", but other times they
try to completely reset the architecture using "arch=armv8-a+crc".
The latter fails on a hard-float ABI with -mfpu=auto because it also
clears the FP capability.  Fix by adding +simd when the full
architecture is specified.

gcc/testsuite:

	* gcc.target/arm/pragma_arch_attribute.c: Add +simd to pragmas that
	set an explicit architecture.
	* gcc.target/arm/pragma_arch_attribute_2.c: Likewise.
	* gcc.target/arm/pragma_arch_attribute_3.c: Likewise.
---
 gcc/testsuite/gcc.target/arm/pragma_arch_attribute.c   | 6 +++---
 gcc/testsuite/gcc.target/arm/pragma_arch_attribute_2.c | 2 +-
 gcc/testsuite/gcc.target/arm/pragma_arch_attribute_3.c | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0012-arm-testsuite-improve-compatibility-of-pragma_arch_a.patch --]
[-- Type: text/x-patch; name="0012-arm-testsuite-improve-compatibility-of-pragma_arch_a.patch", Size: 2110 bytes --]

diff --git a/gcc/testsuite/gcc.target/arm/pragma_arch_attribute.c b/gcc/testsuite/gcc.target/arm/pragma_arch_attribute.c
index a06dbf04037..a5e1edad3a4 100644
--- a/gcc/testsuite/gcc.target/arm/pragma_arch_attribute.c
+++ b/gcc/testsuite/gcc.target/arm/pragma_arch_attribute.c
@@ -10,7 +10,7 @@
 #endif
 
 #pragma GCC push_options
-#pragma GCC target ("arch=armv8-a+crc")
+#pragma GCC target ("arch=armv8-a+simd+crc")
 #ifndef __ARM_FEATURE_CRC32
 # error "__ARM_FEATURE_CRC32 is not defined in push 1."
 #endif
@@ -41,7 +41,7 @@ void test_crc_unknown_ok_attr_1 ()
 # error "__ARM_FEATURE_CRC32 is defined after attribute set 1."
 #endif
 
-__attribute__((target("arch=armv8-a+crc")))
+__attribute__((target("arch=armv8-a+simd+crc")))
 void test_crc_unknown_ok_attr_2 ()
 {
 	__crc32b (0, 0);
@@ -51,4 +51,4 @@ void test_crc_unknown_ok_attr_2 ()
 # error "__ARM_FEATURE_CRC32 is defined after attribute set 2."
 #endif
 
-#pragma GCC reset_options
\ No newline at end of file
+#pragma GCC reset_options
diff --git a/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_2.c b/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_2.c
index 2e8e385774b..189af170096 100644
--- a/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_2.c
+++ b/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_2.c
@@ -8,7 +8,7 @@
 
 extern uint32_t bar();
 
-__attribute__((target("arch=armv8-a+crc"))) uint32_t crc32cw(uint32_t crc, uint32_t val)
+__attribute__((target("arch=armv8-a+simd+crc"))) uint32_t crc32cw(uint32_t crc, uint32_t val)
 {
     uint32_t res;
     asm("crc32cw %0, %1, %2" : "=r"(res) : "r"(crc), "r"(val));
diff --git a/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_3.c b/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_3.c
index 3714812cf26..eb7f990477b 100644
--- a/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_3.c
+++ b/gcc/testsuite/gcc.target/arm/pragma_arch_attribute_3.c
@@ -9,7 +9,7 @@
 extern uint32_t bar();
 
 #pragma GCC push_options
-#pragma GCC target("arch=armv8-a+crc")
+#pragma GCC target("arch=armv8-a+simd+crc")
 uint32_t crc32cw(uint32_t crc, uint32_t val)
 {
     uint32_t res;

  parent reply	other threads:[~2023-11-13 14:27 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-13 14:26 [committed 00/22] arm: testsuite: clean up some architecture-specific tests Richard Earnshaw
2023-11-13 14:26 ` [committed 01/22] arm: testsuite: correctly detect armv6t2 hardware for acle execution tests Richard Earnshaw
2023-11-14 17:01   ` Christophe Lyon
2023-11-14 17:23     ` Richard Earnshaw
2023-11-13 14:26 ` [committed 02/22] arm: testsuite: correctly detect hard_float Richard Earnshaw
2023-11-20 10:41   ` Christophe Lyon
2023-11-20 12:20     ` Richard Earnshaw
2023-11-13 14:26 ` [committed 03/22] arm: testsuite: avoid hard-float ABI incompatibility with -march Richard Earnshaw
2023-11-20 10:23   ` Christophe Lyon
2023-11-20 12:44     ` Richard Earnshaw
2023-11-20 13:36       ` Christophe Lyon
2023-11-20 13:58         ` Richard Earnshaw
2023-11-20 14:24           ` Christophe Lyon
2023-11-20 14:39             ` Richard Earnshaw
2023-11-20 14:49               ` Richard Earnshaw
2023-11-20 14:50               ` Christophe Lyon
2023-11-20 15:58                 ` Richard Earnshaw
2023-11-13 14:26 ` [committed 04/22] arm: testsuite: avoid problems with -mfpu=auto in pacbti-m-predef-11.c Richard Earnshaw
2023-11-13 14:26 ` [committed 05/22] arm: testsuite: avoid problems with -mfpu=auto in attr-crypto.c Richard Earnshaw
2023-11-13 14:26 ` [committed 06/22] arm: testsuite: avoid problems with -mfpu=auto in attr_thumb-static2.c Richard Earnshaw
2023-11-13 14:26 ` [committed 07/22] arm: testsuite: tidy up pre-run check for g2.c Richard Earnshaw
2023-11-13 14:26 ` [committed 08/22] arm: testsuite: improve compatibility of arm/lto/pr96939_1.c Richard Earnshaw
2023-11-13 14:26 ` [committed 09/22] arm: testsuite: tidy up pr65647-2.c pre-checks Richard Earnshaw
2023-11-13 14:26 ` [committed 10/22] arm: testsuite: improve compatibility of arm/pr78353-*.c Richard Earnshaw
2023-11-13 14:26 ` [committed 11/22] arm: testsuite: improve compatibility of pr88648-asm-syntax-unified.c Richard Earnshaw
2023-11-13 14:26 ` Richard Earnshaw [this message]
2023-11-13 14:26 ` [committed 13/22] arm: testsuite: improve compatibility of pragma_arch_switch_2.c Richard Earnshaw
2023-11-13 14:26 ` [committed 14/22] arm: testsuite: modernize framework usage for arm/scd42-2.c Richard Earnshaw
2023-11-13 14:26 ` [committed 15/22] arm: testsuite: improve compatibility of ftest-armv7m-thumb.c Richard Earnshaw
2023-11-13 14:26 ` [committed 16/22] arm: testsuite: improve compatibility of gcc.target/arm/macro_defs*.c Richard Earnshaw
2023-11-13 14:26 ` [committed 17/22] arm: testsuite: improve compatibility of gcc.target/arm/optional_thumb-*.c Richard Earnshaw
2023-11-13 14:26 ` [committed 18/22] arm: testsuite: improve compatibility of gcc.target/arm/pr19599.c Richard Earnshaw
2023-11-13 14:26 ` [committed 19/22] arm: testsuite: improve compatibility of gcc.target/arm/pr59575.c Richard Earnshaw
2023-11-13 14:26 ` [committed 20/22] testsuite: arm: tighten up mode-specific ISA tests Richard Earnshaw
2023-11-13 14:26 ` [committed 21/22] arm: testsuite: fix some more architecture tests Richard Earnshaw
2023-11-13 14:26 ` [committed 22/22] arm: testsuite: improve compatibility of gcc.dg/debug/pr57351.c Richard Earnshaw

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231113142658.69039-13-rearnsha@arm.com \
    --to=rearnsha@arm.com \
    --cc=gcc-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).