This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/80155] [7/8 regression] Performance regression with code hoisting enabled


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80155

--- Comment #32 from Thomas Preud'homme <thopre01 at gcc dot gnu.org> ---
(In reply to rguenther@suse.de from comment #31)
> On Wed, 4 Oct 2017, prathamesh3492 at gcc dot gnu.org wrote:
> 
> > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80155
> > 
> > prathamesh3492 at gcc dot gnu.org changed:
> > 
> >            What    |Removed                     |Added
> > ----------------------------------------------------------------------------
> >                  CC|                            |prathamesh3492 at gcc dot gnu.org
> > 
> > --- Comment #30 from prathamesh3492 at gcc dot gnu.org ---
> > Hi Richard,
> > I tried your patch in comment #9 with the fix in comment #13 but since
> > tree-ssa-pre.c appears to be refactored, the fix doesn't apply anymore and ICE
> > resurfaces. Could you guide me what fix I should apply to reproduce the
> > regression ? IIUC the issue here is that code-hoisting is increasing register
> > pressure thus causing the extra spill ? And GIMPLE does not seem to have cost
> > model for register allocation.
> > 
> > Are you planning to take a look at this PR soon ? If not I would like to give a
> > try and would be grateful for suggestions on how to approach this bug.
> > Thanks!
> 
> Neither am I planning to look at this soon nor do I have a good idea
> how to approach this bug.
> 
> My ideas were to compute register pressure & update it during elimination
> and thus avoid adding uses that increase pressure over some point.  While
> that might mitigate the issue it isn't in any way applying a cost model
> to individual inserts.  [nor is computing/updating register pressure easy]

Hi,

Looking at the testcase I attached to this ticket I'm regrettably not so sure
they are representative of the issue we were facing which resulted from too
much register pressure. With so few variable this is probably hitting some
other bug. I'll try and come up with a better reduced testcase.

Best regards.

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