This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Fix PR61927


I am testing the following patch which reverts order of group
and pattern analysis to 4.8 state.  It doesn't really matter but
it avoids pattern analysis to know about groups which its failure
causes the wrong-code in the PR.

Bootstrapped on x86_64-unknown-linux-gnu, testing in progress.

Help with making the testcase in the PR suitable for the testsuite
is appreciated - my Fortran fu is limited.

Richard.

2014-11-25  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61927
	* tree-vect-loop.c (vect_analyze_loop_2): Revert ordering
	of group and pattern analysis to the one in GCC 4.8.

Index: gcc/tree-vect-loop.c
===================================================================
--- gcc/tree-vect-loop.c	(revision 218019)
+++ gcc/tree-vect-loop.c	(working copy)
@@ -1662,6 +1662,13 @@ vect_analyze_loop_2 (loop_vec_info loop_
       return false;
     }
 
+  /* Classify all cross-iteration scalar data-flow cycles.
+     Cross-iteration cycles caused by virtual phis are analyzed separately.  */
+
+  vect_analyze_scalar_cycles (loop_vinfo);
+
+  vect_pattern_recog (loop_vinfo, NULL);
+
   /* Analyze the access patterns of the data-refs in the loop (consecutive,
      complex, etc.). FORNOW: Only handle consecutive access pattern.  */
 
@@ -1674,13 +1681,6 @@ vect_analyze_loop_2 (loop_vec_info loop_
       return false;
     }
 
-  /* Classify all cross-iteration scalar data-flow cycles.
-     Cross-iteration cycles caused by virtual phis are analyzed separately.  */
-
-  vect_analyze_scalar_cycles (loop_vinfo);
-
-  vect_pattern_recog (loop_vinfo, NULL);
-
   /* Data-flow analysis to detect stmts that do not need to be vectorized.  */
 
   ok = vect_mark_stmts_to_be_vectorized (loop_vinfo);


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]