Patchwork Silence gcc.dg/autopar/pr49960.c

login
register
mail settings
Submitter Jan Hubicka
Date Sept. 5, 2013, 10:50 p.m.
Message ID <20130905225035.GA14285@kam.mff.cuni.cz>
Download mbox | patch
Permalink /patch/272996/
State New
Headers show

Comments

Jan Hubicka - Sept. 5, 2013, 10:50 p.m.
Hi,
this testcase breaks with partial inlining because it depends on hand hoisted loop
header out of the loop nest.  Partial inling (correctly) moves the test out of function
and prevents the analysis to happen.

The whole testcase is very artificial, so I think it is fine to disable partial inlining
until we have IPA value range propagation.

Comitted as obvoius.

Honza
Mike Stump - Sept. 6, 2013, 12:06 a.m.
On Sep 5, 2013, at 3:50 PM, Jan Hubicka <hubicka@ucw.cz> wrote:
> Comitted as obvoius.
> 
> Honza
> 
> Index: ChangeLog
> ===================================================================
> --- ChangeLog	(revision 202296)
> +++ ChangeLog	(working copy)
> @@ -1,3 +1,6 @@
> +2013-09-05  Jan Hubicka  <jh@suse.cz>
> +
> +	* gcc.dg/autopar/pr49960.c: Disable partial inlining
> 2013-09-05  Richard Biener  <rguenther@suse.de>

Please add a blank line between entries…
Jan Hubicka - Sept. 6, 2013, 7:40 a.m.
> > +2013-09-05  Jan Hubicka  <jh@suse.cz>
> > +
> > +	* gcc.dg/autopar/pr49960.c: Disable partial inlining
> > 2013-09-05  Richard Biener  <rguenther@suse.de>
> 
> Please add a blank line between entries?

The actual commmit has the extra line.  Not sure why the patch doesn't.
Sorry for that.

Honza

Patch

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 202296)
+++ ChangeLog	(working copy)
@@ -1,3 +1,6 @@ 
+2013-09-05  Jan Hubicka  <jh@suse.cz>
+
+	* gcc.dg/autopar/pr49960.c: Disable partial inlining
 2013-09-05  Richard Biener  <rguenther@suse.de>
 
 	PR tree-optimization/58137
Index: gcc.dg/autopar/pr49960.c
===================================================================
--- gcc.dg/autopar/pr49960.c	(revision 202271)
+++ gcc.dg/autopar/pr49960.c	(working copy)
@@ -1,5 +1,5 @@ 
 /* { dg-do compile } */
-/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized" } */
+/* { dg-options "-O2 -ftree-parallelize-loops=4 -fdump-tree-parloops-details -fdump-tree-optimized -fno-partial-inlining" } */
 
 #include <stdio.h>
 #define MB 100
@@ -12,7 +12,9 @@  void MRTRBR(int MA_1, int NA_1, int MB_1
   int i,j, t,k;
 
   /* At the moment we are not able to hoist the loop headers out of the loop
-     nest.  */
+     nest. 
+     Partial inlining needs to be disabled so we do not optimize this out
+     of the function body.  */
   if (MA_1 < 4 || NA_1 < 4 || MB_1 < 4)
     return;