From 1b0f570009825ce53a3967ea9a92b1961b7c122b Mon Sep 17 00:00:00 2001
From: Richard Biener <rguenther@suse.de>
Date: Tue, 4 May 2021 11:35:24 +0200
Subject: [PATCH] Restrict gcc.dg/tree-ssa/ssa-dse-26.c

This restricts the testcase to the target where it exposes the
situation fixed with g:e9d297a15d68121ba5bdd5a76ea71c1916180622
which targets BIT_FIELD_REFs created by fold_truth_andor.

This avoids strange dejagnu limits with overly long target lists
and simplifies the tests.

2021-05-04  Richard Biener  <rguenther@suse.de>

	* gcc.dg/tree-ssa/ssa-dse-26.c: Skip on !lp64 targets,
	simplify dump scanning down to one case.
---
 gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-26.c | 19 +++----------------
 1 file changed, 3 insertions(+), 16 deletions(-)

diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-26.c b/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-26.c
index 4011daf5a592..5eabfb464d3c 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-26.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-26.c
@@ -1,6 +1,6 @@
 /* { dg-do compile } */
 /* { dg-options "-O2 -fdump-tree-dse1-details -fno-short-enums -fno-tree-fre" } */
-/* { dg-skip-if "temporary variable for constraint_expr is never used" { msp430-*-* } } */
+/* { dg-skip-if "we want a BIT_FIELD_REF from fold_truth_andor" { ! lp64 } } */
 
 enum constraint_expr_type
 {
@@ -30,18 +30,5 @@ constraint_equal (struct constraint a, struct constraint b)
     && constraint_expr_equal (a.rhs, b.rhs);
 }
 
-/* Most targets should be using this test.  */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: x = " 1 "dse1" { target { ! { tic6x-*-* mmix-knuth-mmixware cr16*-*-* xstormy16*-*-* or1k*-*-* lm32*-*-* bfin*-*-* m32r*-*-* nds32le-elf rx*-*-* } } } } } */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: y = " 1 "dse1" { target { ! { tic6x-*-* mmix-knuth-mmixware cr16*-*-* xstormy16*-*-* or1k*-*-* bfin*-*-* lm32*-*-* m32r*-*-* nds32le-elf rx*-*-* } } } } } */
-
-/* The c6x port generates significantly different gimple which
-   changes the SRA and DSE decisions.   Verify we remove all
-   dead stores.  Similarly for mmix.  */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: \[ax\].. = " 2 "dse1" { target tic6x-*-* } } } */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: \[by\].. = " 2 "dse1" { target tic6x-*-* } } } */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: x::. = " 1 "dse1" { target mmix-knuth-mmixware } } } */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: y::. = " 1 "dse1" { target mmix-knuth-mmixware } } } */
-
-/* And more special cases
-/* { dg-final { scan-tree-dump-times "Deleted dead store: x = " 2 "dse1" { target cr16*-*-* xstormy16*-*-* or1k*-*-* bfin*-*-* lm32*-*-* m32r*-*-* nds32le-elf rx*-*-* } } } */
-/* { dg-final { scan-tree-dump-times "Deleted dead store: y = " 2 "dse1" { target cr16*-*-* xstormy16*-*-* or1k*-*-* bfin*-*-* lm32*-*-* m32r*-*-* nds32le-elf rx*-*-* } } } */
+/* { dg-final { scan-tree-dump-times "Deleted dead store: x = " 1 "dse1" } } */
+/* { dg-final { scan-tree-dump-times "Deleted dead store: y = " 1 "dse1" } } */
-- 
GitLab