Committed.

Richard.

2014-06-25  Richard Biener  <rguent...@suse.de>

        PR testsuite/61560
        * gcc.dg/tree-ssa/ssa-fre-32.c: Change to avoid differences
        for targets that return _Complex float in memory.

Index: gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-32.c
===================================================================
--- gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-32.c  (revision 211969)
+++ gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-32.c  (working copy)
@@ -1,7 +1,9 @@
 /* { dg-do compile } */
 /* { dg-options "-O -fdump-tree-fre1-details" } */
 
-_Complex float 
+_Complex float m;
+
+void
 foo (_Complex float x)
 {    
   float r = __real x;
@@ -9,10 +11,10 @@ foo (_Complex float x)
   _Complex float z;
   __real z = r;
   __imag z = i;
-  return z;
+  m = z;
 } 
 
-_Complex float 
+void
 bar (_Complex float x)
 {    
   float r = __real x;
@@ -20,9 +22,9 @@ bar (_Complex float x)
   _Complex float z = x;
   __real z = r;
   __imag z = i;
-  return z;
+  m = z;
 } 
 
-/* We should CSE all the way to replace the return value with x.  */
-/* { dg-final { scan-tree-dump-times "return x_\\d\+\\(D\\);" 2 "fre1" } } */
+/* We should CSE all the way to replace the stored value with x.  */
+/* { dg-final { scan-tree-dump-times "m = x_\\d\+\\(D\\);" 2 "fre1" } } */
 /* { dg-final { cleanup-tree-dump "fre1" } } */

Reply via email to