re PR tree-optimization/78699 (ICE (segfault) on powerpc64le-linux-gnu (memory-hog))
authorRichard Biener <rguenther@suse.de>
Tue, 13 Dec 2016 09:19:19 +0000 (09:19 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Tue, 13 Dec 2016 09:19:19 +0000 (09:19 +0000)
2016-12-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/78699
* tree-vect-data-refs.c (vect_analyze_group_access_1): Limit
group size.

From-SVN: r243599

gcc/ChangeLog
gcc/tree-vect-data-refs.c

index 5e0562bbbef6ab72251c1be1c06c1bb015e821d1..daa4e8cb678f48ae2c063c0bcceac3717f0d993b 100644 (file)
@@ -1,3 +1,9 @@
+2016-12-13  Richard Biener  <rguenther@suse.de>
+
+       PR tree-optimization/78699
+       * tree-vect-data-refs.c (vect_analyze_group_access_1): Limit
+       group size.
+
 2016-12-13  Richard Biener  <rguenther@suse.de>
 
        PR middle-end/78742
index 5a303140833b711ee1c46564d85549f2ecdc9824..1b9c3b37e6a7ee991b4b4090ecca4c9a507337fb 100644 (file)
@@ -2390,7 +2390,9 @@ vect_analyze_group_access_1 (struct data_reference *dr)
       if (groupsize == 0)
         groupsize = count + gaps;
 
-      if (groupsize > UINT_MAX)
+      /* This could be UINT_MAX but as we are generating code in a very
+         inefficient way we have to cap earlier.  See PR78699 for example.  */
+      if (groupsize > 4096)
        {
          if (dump_enabled_p ())
            dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,