Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-20 Thread H.J. Lu
On Mon, Jan 20, 2014 at 12:09 PM, Jan Hubicka wrote: >> +enum cgraph_inline_failed_flag_t >> +{ >> + CIF_FINAL_NORMAL = 0, >> + CIF_FINAL_ERROR > > The difference is that some errors will never go away, while others are > "temporary" > and inliner may revisit them later and inline (such as when

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-20 Thread Jan Hubicka
> +enum cgraph_inline_failed_flag_t > +{ > + CIF_FINAL_NORMAL = 0, > + CIF_FINAL_ERROR The difference is that some errors will never go away, while others are "temporary" and inliner may revisit them later and inline (such as when indirect call becomes direct). So perhaps CIF_FINAL/CIF_NORMAL?

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 8:42 AM, Jan Hubicka wrote: >> For this testcase, we get CIF_TARGET_OPTION_MISMATCH. >> Do you want to add a new flag so that inliner can use for >> other errors? > > Just add flags parameter to DEFCIFCODE in cif-code.def > and flag those that are final and should be output

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread Jan Hubicka
> For this testcase, we get CIF_TARGET_OPTION_MISMATCH. > Do you want to add a new flag so that inliner can use for > other errors? Just add flags parameter to DEFCIFCODE in cif-code.def and flag those that are final and should be output already in early inlining. This way we will not forget to in

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 7:35 AM, Jan Hubicka wrote: >> > diff --git a/gcc/ChangeLog b/gcc/ChangeLog >> > index 5c674bc..284bc66 100644 >> > --- a/gcc/ChangeLog >> > +++ b/gcc/ChangeLog >> > @@ -1,3 +1,12 @@ >> > +2014-01-13 Sriraman Tallam >> > + H.J. Lu >> > + >> > + PR middl

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread Jan Hubicka
> > diff --git a/gcc/ChangeLog b/gcc/ChangeLog > > index 5c674bc..284bc66 100644 > > --- a/gcc/ChangeLog > > +++ b/gcc/ChangeLog > > @@ -1,3 +1,12 @@ > > +2014-01-13 Sriraman Tallam > > + H.J. Lu > > + > > + PR middle-end/59789 > > + * tree-inline.c (report_early_inliner_

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread H.J. Lu
On Mon, Jan 13, 2014 at 12:11 PM, H.J. Lu wrote: > Hi, > > We should report some early inlining errors. This patch is based on > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57698#c7 > > It adds report_early_inliner_always_inline_failure and uses it in > expand_call_inline. Tested on Linux/x86-

PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-13 Thread H.J. Lu
Hi, We should report some early inlining errors. This patch is based on http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57698#c7 It adds report_early_inliner_always_inline_failure and uses it in expand_call_inline. Tested on Linux/x86-64. OK to install? Thanks. H.J. commit 7b18b53d308b2c25