]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
arm: testsuite: fix some more architecture tests
authorRichard Earnshaw <rearnsha@arm.com>
Tue, 7 Nov 2023 10:52:23 +0000 (10:52 +0000)
committerRichard Earnshaw <rearnsha@arm.com>
Mon, 13 Nov 2023 14:15:57 +0000 (14:15 +0000)
This fixes a bunch more tests that try to override the default architecture;
some partially used the framework for doing this, others just blindly
added a -march option, which was doomed to cause problems.  In most cases
we can now run these tests regardless of the users testing options and
the base compiler configuration.

gcc/testsuite:

* lib/target-supports.exp (check_effective_target_arm_arch_FUNC_ok):
Add test for v7a_arm.
* gcc.target/arm/pr60650-2.c: Use require-effective-target and
add-options.
* gcc.target/arm/pr60657.c: Likewise.
* gcc.target/arm/pr60663.c: Likewise.
* gcc.target/arm/pr81863.c: Likewise.
* gcc.target/arm/pr97969.c: Likewise.
* gcc.target/arm/pr98931.c: Likewise.
* gcc.target/arm/tail-long-call.c: Likewise.

gcc/testsuite/gcc.target/arm/pr60650-2.c
gcc/testsuite/gcc.target/arm/pr60657.c
gcc/testsuite/gcc.target/arm/pr60663.c
gcc/testsuite/gcc.target/arm/pr81863.c
gcc/testsuite/gcc.target/arm/pr97969.c
gcc/testsuite/gcc.target/arm/pr98931.c
gcc/testsuite/gcc.target/arm/tail-long-call.c
gcc/testsuite/lib/target-supports.exp

index c44d7b5f9d2cb9ebc18e3a9bb7ca443944a9390b..36d57f08676622173cd65491c8ada1a66100c5d8 100644 (file)
@@ -1,6 +1,8 @@
 /* { dg-do compile } */
+/* { dg-require-effective-target arm_arch_v7a_ok } */
 /* { dg-skip-if "-mpure-code supports M-profile only" { *-*-* } { "-mpure-code" } } */
-/* { dg-options "-O2 -fno-omit-frame-pointer -march=armv7-a" } */
+/* { dg-options "-O2 -fno-omit-frame-pointer" } */
+/* { dg-add-options arm_arch_v7a } */
 
 int a, h, j;
 long long d, e, i;
index ca121526bb38d6daefd71b28ab03ae2763ba1691..e608dd393552d5c6409c05bde070e6a200fc2bc0 100644 (file)
@@ -1,6 +1,8 @@
 /* { dg-do compile } */
+/* { dg-require-effective-target arm_arch_v7a_ok } */
 /* { dg-skip-if "-mpure-code supports M-profile only" { *-*-* } { "-mpure-code" } } */
-/* { dg-options "-O2 -march=armv7-a" } */
+/* { dg-options "-O2" } */
+/* { dg-add-options arm_arch_v7a } */
 
 
 void foo (void);
index 8d76d79301a59abb6d7b9695a89d329b0e959286..bb48d7fdae8a8adde50f9f6809ae6de7bab88661 100644 (file)
@@ -1,7 +1,9 @@
 /* PR rtl-optimization/60663 */
 /* { dg-do compile } */
+/* { dg-require-effective-target arm_arch_v7a_ok } */
 /* { dg-skip-if "-mpure-code supports M-profile only" { *-*-* } { "-mpure-code" } } */
-/* { dg-options "-O2 -march=armv7-a" } */
+/* { dg-options "-O2" } */
+/* { dg-add-options arm_arch_v7a } */
 
 int
 foo (void)
index 85bfab144c008b4562c35555e6adf31335ec8c59..a96f3b584110cb057484809b2f177d814d07e03f 100644 (file)
@@ -1,8 +1,10 @@
 /* testsuite/gcc.target/arm/pr48183.c */
 /* { dg-do compile } */
+/* { dg-require-effective-target arm_arch_v7a_arm_ok } */
 /* { dg-skip-if "-mslow-flash-data and -mword-relocations incompatible" { *-*-* } { "-mslow-flash-data" } } */
 /* { dg-skip-if "-mpure-code and -mword-relocations incompatible" { *-*-* } { "-mpure-code" } } */
-/* { dg-options "-O2 -mword-relocations -march=armv7-a -marm" } */
+/* { dg-options "-O2 -mword-relocations" } */
+/* { dg-add-options arm_arch_v7a_arm } */
 /* { dg-final { scan-assembler-not "\[\\t \]+movw" } } */
 
 int a, d, f;
index 714a1d1887097d13bb9d698025cb9465b48fa6e6..b8c3a23676a2fe696b0b873ea8b2a22cb0573527 100644 (file)
@@ -1,5 +1,7 @@
 /* { dg-do compile } */
-/* { dg-options "-std=c99 -fno-omit-frame-pointer -mthumb -w -Os" } */
+/* { dg-require-effective-target arm_arch_v6m_ok } */
+/* { dg-options "-std=c99 -fno-omit-frame-pointer -w -Os" } */
+/* { dg-add-options arm_arch_v6m } */
 
 typedef a[23];
 enum { b };
index 66070ad72982c2ee3c9ecc3835dfcc61656a4cd8..56f66a3b82fb80488f722d6f92bd65498ae771ff 100644 (file)
@@ -1,6 +1,7 @@
 /* { dg-do assemble } */
-/* { dg-skip-if "avoid conflicting multilib options" { *-*-* } { "-marm" "-mcpu=*" } } */
-/* { dg-options "-march=armv8.1-m.main -O3 --param=max-completely-peeled-insns=1300 --save-temps -mthumb" } */
+/* { dg-require-effective-target arm_arch_v8_1m_main_ok } */
+/* { dg-options "-O3 --param=max-completely-peeled-insns=1300 --save-temps" } */
+/* { dg-add-options arm_arch_v8_1m_main } */
 
 extern long long a[][20][26][26][22];
 
index f70e9cf3938e655034d28e5a84f43f141bafa797..6a130063fcc56253e4db404e38587d6cfef2ed42 100644 (file)
@@ -1,6 +1,8 @@
-/* { dg-skip-if "need at least armv5te" { *-*-* } { "-march=armv[234]*" "-mthumb" } { "" } } */
+/* { dg-do compile } */
+/* { dg-require-effective-target arm_arch_v5te_arm_ok } */
 /* { dg-skip-if "FDPIC does not support tailcall optimization" { arm*-*-uclinuxfdpiceabi } "*" "" } */
-/* { dg-options "-O2 -march=armv5te -marm" } */
+/* { dg-options "-O2" } */
+/* { dg-add-options arm_arch_v5te_arm } */
 /* { dg-final { scan-assembler "bx" } } */
 /* { dg-final { scan-assembler-not "blx" } } */
 
index 3d504d261641ffa39864f58da990128168590a63..ae43dc97872061883e8f4ee0be1cc781e0ad2d50 100644 (file)
@@ -5424,6 +5424,7 @@ foreach { armfunc armflag armdefs } {
        v6z_thumb "-march=armv6z+fp -mthumb -mfloat-abi=softfp" "__ARM_ARCH_6Z__ && __thumb__"
        v6m "-march=armv6-m -mthumb -mfloat-abi=soft" __ARM_ARCH_6M__
        v7a "-march=armv7-a+fp" __ARM_ARCH_7A__
+       v7a_arm "-march=armv7-a+fp -marm" "__ARM_ARCH_7A__ && !__thumb__"
        v7r "-march=armv7-r+fp" __ARM_ARCH_7R__
        v7m "-march=armv7-m -mthumb -mfloat-abi=soft" __ARM_ARCH_7M__
        v7em "-march=armv7e-m+fp -mthumb" __ARM_ARCH_7EM__