]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Tweak gcc.dg/attr-aligned.c for CRIS
authorHans-Peter Nilsson <hp@axis.com>
Thu, 16 Feb 2023 19:21:50 +0000 (20:21 +0100)
committerHans-Peter Nilsson <hp@bitrange.com>
Fri, 3 Mar 2023 03:32:12 +0000 (04:32 +0100)
tm.texi says for BIGGEST_ALIGNMENT (from which
__BIGGEST_ALIGNMENT__ is derived): "Biggest alignment that
any data type can require on this machine, in bits."

That is, using that value might be too strict for alignment
of *functions* and CRIS requires at least 16-bit alignment
for functions.  But, one purpose of the test is to test that
alignment can be set to a large but valid value, so pick
512, which has some use as a historically required alignment
for certain I/O descriptors.

* gcc.dg/attr-aligned.c: Adjust comment for ALIGN_MAX_STATIC.
(ALIGN_MAX_STATIC): Set to 512 for CRIS.

gcc/testsuite/gcc.dg/attr-aligned.c

index 887bdd0f379903a89648c3789d7f3e0ae5821e91..4f0c885dc812565869c953bb305a45631db8d905 100644 (file)
 # else
 #   define ALIGN_MAX_STATIC      ALIGN_MAX_HARD
 # endif
+#elif __CRIS__
+/* __BIGGEST_ALIGNMENT__ doesn't cover functions (16 bits for CRIS). */
+#  define ALIGN_MAX_STATIC      512
+#  define ALIGN_TOO_BIG_OFILE   (ALIGN_MAX_HARD << 1)
 #elif pdp11
 #  define ALIGN_MAX_STATIC      2
 /* Work around a pdp11 ICE (see PR target/87821).  */
@@ -29,7 +33,9 @@
 /* Is this processor- or operating-system specific?  */
 #  define ALIGN_MAX_STATIC      ALIGN_MAX_HARD
 #else
-   /* Guaranteed to be accepted regardless of the target.  */
+   /* Guaranteed to be accepted regardless of the target for objects.
+      This might not be true for alignment of functions though, so
+      may need to be set to a target-specific value above.  */
 #  define ALIGN_MAX_STATIC      __BIGGEST_ALIGNMENT__
    /* Guaranteed to be rejected regardless of the target.  */
 #  define ALIGN_TOO_BIG_OFILE   (ALIGN_MAX_HARD << 1)