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 PR48184


This fixes an ICE in case we use weirdo --param value for 
PARAM_ALIGN_THRESHOLD.  The patch is by Andrew; I added CL, testcase
and tested.

Bootstrapped/regtested on x86_64-linux, ok for trunk?  And what about other
branches?

2013-04-04  Marek Polacek  <polacek@redhat.com>
	    Andrew Pinski  <apinski@cavium.com>

	PR tree-optimization/48184
	* final.c (compute_alignments): Set threshold to 0
	if PARAM_ALIGN_THRESHOLD is 0.

	* gcc.dg/pr48184.c: New test.

--- gcc/final.c.mp	2013-04-04 14:09:04.626020852 +0200
+++ gcc/final.c	2013-04-04 14:09:05.672024174 +0200
@@ -701,7 +701,10 @@ compute_alignments (void)
   FOR_EACH_BB (bb)
     if (bb->frequency > freq_max)
       freq_max = bb->frequency;
-  freq_threshold = freq_max / PARAM_VALUE (PARAM_ALIGN_THRESHOLD);
+  if (PARAM_VALUE (PARAM_ALIGN_THRESHOLD) == 0)
+    freq_threshold = 0;
+  else
+    freq_threshold = freq_max / PARAM_VALUE (PARAM_ALIGN_THRESHOLD);
 
   if (dump_file)
     fprintf(dump_file, "freq_max: %i\n",freq_max);
--- gcc/testsuite/gcc.dg/pr48184.c.mp	2013-04-04 13:23:15.356769534 +0200
+++ gcc/testsuite/gcc.dg/pr48184.c	2013-04-04 14:05:05.506241464 +0200
@@ -0,0 +1,5 @@
+/* PR tree-optimization/48184 */
+/* { dg-do compile } */
+/* { dg-options "-O --param align-threshold=0" } */
+
+void foo (void) { }

	Marek


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