public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/49890] New: IRA spill with plenty of available registers
@ 2011-07-28 19:10 pthaugen at gcc dot gnu.org
  2011-08-18 16:33 ` [Bug rtl-optimization/49890] " vmakarov at redhat dot com
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: pthaugen at gcc dot gnu.org @ 2011-07-28 19:10 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49890

           Summary: IRA spill with plenty of available registers
           Product: gcc
           Version: 4.7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: pthaugen@gcc.gnu.org
                CC: vmakarov@gcc.gnu.org, bergner@gcc.gnu.org
              Host: powerpc64-linux
            Target: powerpc64-linux
             Build: powerpc64-linux


Vlad,
  Opening bz as you requested.  Background/detail can be found here:
http://gcc.gnu.org/ml/gcc/2011-05/msg00186.html.

Basically, following testcase compiled with gcc -S -m64 -O3 -mcpu=power7 causes
IRA to spill pseudo used for copy.

void foo(float *f1, float*f2) {
  *f1 = *f2;
}


**** Allocnos coloring:

  Loop 0 (parent -1, header bb0, depth 0)
    bbs: 2
    all: 0r120
    modified regnos: 120
    border:
    Pressure: NON_FLOAT_REGS=2
    Hard reg set forest:
      0:( 0 3-12 14-63 65 66 68-72 74 75 77-108)@0
      Spill a0(r120,l0)
Disposition:
    0:r120 l0   mem


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug rtl-optimization/49890] IRA spill with plenty of available registers
  2011-07-28 19:10 [Bug rtl-optimization/49890] New: IRA spill with plenty of available registers pthaugen at gcc dot gnu.org
@ 2011-08-18 16:33 ` vmakarov at redhat dot com
  2011-08-18 17:33 ` vmakarov at gcc dot gnu.org
  2011-08-23 19:05 ` pthaugen at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: vmakarov at redhat dot com @ 2011-08-18 16:33 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49890

Vladimir Makarov <vmakarov at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vmakarov at redhat dot com

--- Comment #1 from Vladimir Makarov <vmakarov at redhat dot com> 2011-08-18 16:12:45 UTC ---
IRA removes some classes for consideration on the 2nd pass to speed up cost
calculation which is very time consuming.  IRA did it in too optimistic way. 
That is the reason of the problem.

I'll send a patch which removes classes in more conservative way and fixes the
problem.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug rtl-optimization/49890] IRA spill with plenty of available registers
  2011-07-28 19:10 [Bug rtl-optimization/49890] New: IRA spill with plenty of available registers pthaugen at gcc dot gnu.org
  2011-08-18 16:33 ` [Bug rtl-optimization/49890] " vmakarov at redhat dot com
@ 2011-08-18 17:33 ` vmakarov at gcc dot gnu.org
  2011-08-23 19:05 ` pthaugen at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: vmakarov at gcc dot gnu.org @ 2011-08-18 17:33 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49890

--- Comment #2 from Vladimir Makarov <vmakarov at gcc dot gnu.org> 2011-08-18 17:06:26 UTC ---
Author: vmakarov
Date: Thu Aug 18 17:06:18 2011
New Revision: 177874

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=177874
Log:
2011-08-18  Vladimir Makarov  <vmakarov@redhat.com>

    PR rtl-optimization/49890
    * ira-costs.c (setup_regno_cost_classes_by_aclass): Don't exclude
    subclasses of class which is superset of a pressure class.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/ira-costs.c


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug rtl-optimization/49890] IRA spill with plenty of available registers
  2011-07-28 19:10 [Bug rtl-optimization/49890] New: IRA spill with plenty of available registers pthaugen at gcc dot gnu.org
  2011-08-18 16:33 ` [Bug rtl-optimization/49890] " vmakarov at redhat dot com
  2011-08-18 17:33 ` vmakarov at gcc dot gnu.org
@ 2011-08-23 19:05 ` pthaugen at gcc dot gnu.org
  2 siblings, 0 replies; 4+ messages in thread
From: pthaugen at gcc dot gnu.org @ 2011-08-23 19:05 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49890

Pat Haugen <pthaugen at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED

--- Comment #3 from Pat Haugen <pthaugen at gcc dot gnu.org> 2011-08-23 18:46:21 UTC ---
Fixed


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-08-23 18:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-28 19:10 [Bug rtl-optimization/49890] New: IRA spill with plenty of available registers pthaugen at gcc dot gnu.org
2011-08-18 16:33 ` [Bug rtl-optimization/49890] " vmakarov at redhat dot com
2011-08-18 17:33 ` vmakarov at gcc dot gnu.org
2011-08-23 19:05 ` pthaugen at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).