[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.
This commit is contained in:
Tom de Vries 2020-09-24 10:03:10 +02:00
parent c9da53d698
commit 7e43716200
2 changed files with 4 additions and 4 deletions

View File

@ -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 } } } } */

View File

@ -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 } } } } */