aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2023-02-15 20:11:58 +0100
committerHans-Peter Nilsson <hp@bitrange.com>2023-03-02 02:08:41 +0100
commit854a268dccd7976bfc17584be8f9b2afa6c51fa0 (patch)
tree8b86a2c98bc086281e9612431a007a3d1d4b1036 /gcc
parentc88a7c634800bb23ec7303e0c9300ee399a4b457 (diff)
downloadgcc-854a268dccd7976bfc17584be8f9b2afa6c51fa0.zip
gcc-854a268dccd7976bfc17584be8f9b2afa6c51fa0.tar.gz
gcc-854a268dccd7976bfc17584be8f9b2afa6c51fa0.tar.bz2
testsuite: Handle "packed" targets in c-c++-common/auto-init-7.c and -8.c
Looks like there's a failed assumption that sizeof (union U { char u1[5]; int u2; float u3; }) == 8. However, for "packed" targets like cris-elf, it's 5. These two tests have always failed for cris-elf. I see from https://gcc.gnu.org/pipermail/gcc-testresults/2023-February/777912.html that they fail on pru-elf too, but I don't know if the cause (and/or remedy) is the same. IMHO this is preferred over the alternative; splitting up that last line into two lines, like: /* { dg-final { scan-tree-dump "temp4 = \ .DEFERRED_INIT \\(8, 2, \&\"temp4\"" "gimple" { target { ! default_packed } } } } */ /* { dg-final { scan-tree-dump "temp4 = \ .DEFERRED_INIT \\(5, 2, \&\"temp4\"" "gimple" { target default_packed } } } */ gcc/testsuite: * c-c++-common/auto-init-7.c, c-c++-common/auto-init-8.c: Also match targets where sizeof (union U) == 5, like "packed" targets.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/c-c++-common/auto-init-7.c2
-rw-r--r--gcc/testsuite/c-c++-common/auto-init-8.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/gcc/testsuite/c-c++-common/auto-init-7.c b/gcc/testsuite/c-c++-common/auto-init-7.c
index b44dd5e..dd48d69 100644
--- a/gcc/testsuite/c-c++-common/auto-init-7.c
+++ b/gcc/testsuite/c-c++-common/auto-init-7.c
@@ -32,4 +32,4 @@ double foo()
/* { dg-final { scan-tree-dump "temp1 = .DEFERRED_INIT \\(12, 2, \&\"temp1\"" "gimple" } } */
/* { dg-final { scan-tree-dump "temp2 = .DEFERRED_INIT \\(24, 2, \&\"temp2\"" "gimple" } } */
/* { dg-final { scan-tree-dump "temp3 = .DEFERRED_INIT \\(28, 2, \&\"temp3\"" "gimple" } } */
-/* { dg-final { scan-tree-dump "temp4 = .DEFERRED_INIT \\(8, 2, \&\"temp4\"" "gimple" } } */
+/* { dg-final { scan-tree-dump "temp4 = .DEFERRED_INIT \\((8|5), 2, \&\"temp4\"" "gimple" } } */
diff --git a/gcc/testsuite/c-c++-common/auto-init-8.c b/gcc/testsuite/c-c++-common/auto-init-8.c
index 739ac02..863f2ba 100644
--- a/gcc/testsuite/c-c++-common/auto-init-8.c
+++ b/gcc/testsuite/c-c++-common/auto-init-8.c
@@ -32,4 +32,4 @@ double foo()
/* { dg-final { scan-tree-dump "temp1 = .DEFERRED_INIT \\(12, 1, \&\"temp1\"" "gimple" } } */
/* { dg-final { scan-tree-dump "temp2 = .DEFERRED_INIT \\(24, 1, \&\"temp2\"" "gimple" } } */
/* { dg-final { scan-tree-dump "temp3 = .DEFERRED_INIT \\(28, 1, \&\"temp3\"" "gimple" } } */
-/* { dg-final { scan-tree-dump "temp4 = .DEFERRED_INIT \\(8, 1, \&\"temp4\"" "gimple" } } */
+/* { dg-final { scan-tree-dump "temp4 = .DEFERRED_INIT \\((8|5), 1, \&\"temp4\"" "gimple" } } */