diff options
author | Tom de Vries <tdevries@suse.de> | 2020-09-24 10:03:10 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2020-09-24 10:15:37 +0200 |
commit | 7e437162001f258c8db4eae25da3bca812dd557a (patch) | |
tree | 59e411a3cf563f64505c6c3d792ce2d903a422e6 /gcc | |
parent | c9da53d6987af5f8ff68b58dd76a9fbc900a6a21 (diff) | |
download | gcc-7e437162001f258c8db4eae25da3bca812dd557a.zip gcc-7e437162001f258c8db4eae25da3bca812dd557a.tar.gz gcc-7e437162001f258c8db4eae25da3bca812dd557a.tar.bz2 |
[testsuite] Require non_strict_align in pr94600-{1,3}.c
With the nvptx target, we run into:
...
FAIL: gcc.dg/pr94600-1.c scan-rtl-dump-times final "\\(mem/v" 6
FAIL: gcc.dg/pr94600-1.c scan-rtl-dump-times final "\\(set \\(mem/v" 6
FAIL: gcc.dg/pr94600-3.c scan-rtl-dump-times final "\\(mem/v" 1
FAIL: gcc.dg/pr94600-3.c scan-rtl-dump-times final "\\(set \\(mem/v" 1
...
The scans attempt to check for volatile stores, but on nvptx we have memcpy
instead.
This is due to nvptx being a STRICT_ALIGNMENT target, which has the effect
that the TYPE_MODE for the store target is set to BKLmode in
compute_record_mode.
Fix the FAILs by requiring effective target non_strict_align.
Tested on nvptx.
gcc/testsuite/ChangeLog:
2020-09-24 Tom de Vries <tdevries@suse.de>
* gcc.dg/pr94600-1.c: Require effective target non_strict_align for
scan-rtl-dump-times.
* gcc.dg/pr94600-3.c: Same.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/gcc.dg/pr94600-1.c | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr94600-3.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/gcc/testsuite/gcc.dg/pr94600-1.c b/gcc/testsuite/gcc.dg/pr94600-1.c index b5913a0..38f939a 100644 --- a/gcc/testsuite/gcc.dg/pr94600-1.c +++ b/gcc/testsuite/gcc.dg/pr94600-1.c @@ -32,5 +32,5 @@ foo(void) } /* The only volatile accesses should be the obvious writes. */ -/* { dg-final { scan-rtl-dump-times {\(mem/v} 6 "final" } } */ -/* { dg-final { scan-rtl-dump-times {\(set \(mem/v} 6 "final" } } */ +/* { dg-final { scan-rtl-dump-times {\(mem/v} 6 "final" { target { non_strict_align } } } } */ +/* { dg-final { scan-rtl-dump-times {\(set \(mem/v} 6 "final" { target { non_strict_align } } } } */ diff --git a/gcc/testsuite/gcc.dg/pr94600-3.c b/gcc/testsuite/gcc.dg/pr94600-3.c index 7537f6c..e8776fb 100644 --- a/gcc/testsuite/gcc.dg/pr94600-3.c +++ b/gcc/testsuite/gcc.dg/pr94600-3.c @@ -31,5 +31,5 @@ foo(void) } /* The loop isn't unrolled. */ -/* { dg-final { scan-rtl-dump-times {\(mem/v} 1 "final" } } */ -/* { dg-final { scan-rtl-dump-times {\(set \(mem/v} 1 "final" } } */ +/* { dg-final { scan-rtl-dump-times {\(mem/v} 1 "final" { target { non_strict_align } } } } */ +/* { dg-final { scan-rtl-dump-times {\(set \(mem/v} 1 "final" { target { non_strict_align } } } } */ |