This removes the XFAIL by fixing the testcase - it cannot be ever optimized in the desired way because the write to type.alias_set _does_ kill the previous load. But that's because the testcase bogously simplified the tree inheritance.
Fixed. Also disabled FRE so this really tests DOM. (all the 20030814-x testcases have the same issue, but this one is exposed by an artificial XPASS I was seeing with a local patch). Installed. Richard. 2016-04-05 Richard Biener <rguent...@suse.de> * gcc.dg/tree-ssa/20030814-6.c: Fix testcase, disable FRE, remove XFAIL. Index: gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c =================================================================== --- gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c (revision 234705) +++ gcc/testsuite/gcc.dg/tree-ssa/20030814-6.c (working copy) @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O1 -fdump-tree-dom2" } */ +/* { dg-options "-O1 -fno-tree-fre -fdump-tree-dom2" } */ extern void abort (void); union tree_node; @@ -15,6 +15,7 @@ struct tree_common }; struct tree_type { + struct tree_common common; double alias_set; }; union tree_node @@ -39,6 +40,4 @@ foo (t, set) } /* There should be precisely one load of common.code. If there is more than one, then the dominator optimizations failed. */ -/* ??? Will fail until we properly distinguish member stores. At - present the write to type.alias_set kills the previous load. */ -/* { dg-final { scan-tree-dump-times "common.code" 1 "dom2" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-times "common.code" 1 "dom2" } } */