Patchwork Fix inline-1.C and inline-3.C testcases

login
register
mail settings
Submitter Jan Hubicka
Date Feb. 5, 2013, 3:27 p.m.
Message ID <20130205152714.GA14902@kam.mff.cuni.cz>
Download mbox | patch
Permalink /patch/218275/
State New
Headers show

Comments

Jan Hubicka - Feb. 5, 2013, 3:27 p.m.
Hi,
I managed to get an accidental commit on those two testcases without an ChangeLog entry.
I just commit the missing ChangeLog and the following patch that should make them pass.

just in a case you wonder what are the tests about. I disabled iteration on early inliner
that makes it to mis some cases of indirect inlining that are now handled by later
inliner. The tree-ssa/inline-?.C testcases tests that early inliner with large enough
iteration counts still does the optimization, while ipa/inline-?.C are the same
testcases with no iteration and test that late inline picks the optimization too.

The motivation for the change was early inliner doing funny things on non-trivial recursion
especially with early-inlining-insns bumped up.

My apologizes,
Honza
Jakub Jelinek - Feb. 5, 2013, 3:51 p.m.
On Tue, Feb 05, 2013 at 04:27:15PM +0100, Jan Hubicka wrote:
> I managed to get an accidental commit on those two testcases without an ChangeLog entry.
> I just commit the missing ChangeLog and the following patch that should make them pass.
> 
> just in a case you wonder what are the tests about. I disabled iteration on early inliner
> that makes it to mis some cases of indirect inlining that are now handled by later
> inliner. The tree-ssa/inline-?.C testcases tests that early inliner with large enough
> iteration counts still does the optimization, while ipa/inline-?.C are the same
> testcases with no iteration and test that late inline picks the optimization too.
> 
> The motivation for the change was early inliner doing funny things on non-trivial recursion
> especially with early-inlining-insns bumped up.

Doesn't seem to be enough.

gcc/testsuite/g++.dg/ipa/inline-3.C
has
/* { dg-final { cleanup-tree-dump "inline" } } */
while supposedly it should have:
/* { dg-final { cleanup-ipa-dump "inline" } } */

Also,
gcc/testsuite/gcc.dg/tree-ssa/inline-3.c
is now failing, supposedly it should have --param added ?

	Jakub

Patch

Index: g++.dg/tree-ssa/inline-3.C
===================================================================
--- g++.dg/tree-ssa/inline-3.C	(revision 195751)
+++ g++.dg/tree-ssa/inline-3.C	(working copy)
@@ -1,5 +1,5 @@ 
 /* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-einline --param max-early-inliner-iterations=3" } */
+/* { dg-options "-O2 -fdump-tree-einline --param max-early-inliner-iterations=5" } */
 /* { dg-add-options bind_pic_locally } */
 
 #include <algorithm>
Index: g++.dg/ipa/inline-1.C
===================================================================
--- g++.dg/ipa/inline-1.C	(revision 195751)
+++ g++.dg/ipa/inline-1.C	(working copy)
@@ -31,6 +31,6 @@  int main(int argc, char **argv)
   foreach (argv, argv + argc, inline_me_too);
 }
 
-/* { dg-final { scan-tree-dump-times "Considering void inline_me\\(" 1 "inline"} } */
-/* { dg-final { scan-tree-dump-times "Considering void inline_me_too\\(" 1 "inline"} } */
-/* { dg-final { cleanup-tree-dump "einline" } } */
+/* { dg-final { scan-ipa-dump-times "Considering void inline_me\\(" 1 "inline"} } */
+/* { dg-final { scan-ipa-dump-times "Considering void inline_me_too\\(" 1 "inline"} } */
+/* { dg-final { cleanup-ipa-dump "inline" } } */