public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
@ 2010-10-01 11:55 ` jakub at gcc dot gnu.org
  2011-01-19 20:44 ` law at redhat dot com
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-10-01 11:55 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.4.5                       |4.4.6


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
  2010-10-01 11:55 ` [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon jakub at gcc dot gnu.org
@ 2011-01-19 20:44 ` law at redhat dot com
  2011-01-20  3:49 ` law at redhat dot com
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: law at redhat dot com @ 2011-01-19 20:44 UTC (permalink / raw)
  To: gcc-bugs

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

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |law at redhat dot com
      Known to fail|                            |

--- Comment #7 from Jeffrey A. Law <law at redhat dot com> 2011-01-19 20:15:32 UTC ---
Looking at it


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
  2010-10-01 11:55 ` [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon jakub at gcc dot gnu.org
  2011-01-19 20:44 ` law at redhat dot com
@ 2011-01-20  3:49 ` law at redhat dot com
  2011-01-21 17:16 ` law at redhat dot com
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: law at redhat dot com @ 2011-01-20  3:49 UTC (permalink / raw)
  To: gcc-bugs

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

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot       |law at redhat dot com
                   |gnu.org                     |

--- Comment #8 from Jeffrey A. Law <law at redhat dot com> 2011-01-20 00:49:46 UTC ---

This problem only exposes itself when there are uses of uninitialized variables
and -fno-ira-share-save-slots is enabled.   In this circumstance the reg_info
structure may claim that a pseudo is not live across a  call.  However, if the
pseudo is used after the call in an initialized state, then the reload chains
will claim the pseudo is live across the call.

The inconsistency in those data structures ultimately leads to an inconsistency
in setup_save_areas and save_call_clobbered_regs which triggers the ICE.

I think the way to go is use the same code regardless of
-fno-ira-share-save-slots in setup_save_areas to determine which hard regs need
saving.  A quick test shows that works.

I'm going to have to clean up that preliminary patch and do some more rigorous
testing, including regtesting with -fno-ira-share-save-slots.

Jeff


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2011-01-20  3:49 ` law at redhat dot com
@ 2011-01-21 17:16 ` law at redhat dot com
  2011-01-21 17:19 ` law at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: law at redhat dot com @ 2011-01-21 17:16 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Jeffrey A. Law <law at redhat dot com> 2011-01-21 16:45:36 UTC ---
http://gcc.gnu.org/ml/gcc-patches/2011-01/msg01424.html

After some brief discussion with rth (concerns about global_regs) in IRC, rth
approved the patch.


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2011-01-21 17:16 ` law at redhat dot com
@ 2011-01-21 17:19 ` law at gcc dot gnu.org
  2011-01-21 17:25 ` law at redhat dot com
  2011-05-26 12:46 ` ebotcazou at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: law at gcc dot gnu.org @ 2011-01-21 17:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Jeffrey A. Law <law at gcc dot gnu.org> 2011-01-21 16:49:34 UTC ---
Author: law
Date: Fri Jan 21 16:49:31 2011
New Revision: 169095

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169095
Log:

    PR rtl-optimization/41619
    * caller-save.c (setup_save_areas): Break out code to determine
    which hard regs are live across calls by examining the reload chains
    so that it is always used.
    Eliminate code which checked REG_N_CALLS_CROSSED.

    PR rtl-optimization/41619
    * gcc.dg/pr41619.c: New.


Added:
    trunk/gcc/testsuite/gcc.dg/pr41619.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/caller-save.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2011-01-21 17:19 ` law at gcc dot gnu.org
@ 2011-01-21 17:25 ` law at redhat dot com
  2011-05-26 12:46 ` ebotcazou at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: law at redhat dot com @ 2011-01-21 17:25 UTC (permalink / raw)
  To: gcc-bugs

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

Jeffrey A. Law <law at redhat dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|4.4.6                       |4.6.0

--- Comment #11 from Jeffrey A. Law <law at redhat dot com> 2011-01-21 16:50:09 UTC ---
Fixed


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
       [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2011-01-21 17:25 ` law at redhat dot com
@ 2011-05-26 12:46 ` ebotcazou at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-05-26 12:46 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #12 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-05-26 12:43:10 UTC ---
Author: ebotcazou
Date: Thu May 26 12:43:06 2011
New Revision: 174278

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=174278
Log:
    Backport from mainline
    2011-01-21  Jeff Law  <law@redhat.com>

    PR rtl-optimization/41619
    * caller-save.c (setup_save_areas): Break out code to determine
    which hard regs are live across calls by examining the reload chains
    so that it is always used.
    Eliminate code which checked REG_N_CALLS_CROSSED.

Modified:
    branches/gcc-4_5-branch/gcc/ChangeLog
    branches/gcc-4_5-branch/gcc/caller-save.c


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

* [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon
  2009-10-07 13:10 [Bug c++/41619] New: " kenneth dot hoste at elis dot ugent dot be
@ 2010-04-30  8:55 ` jakub at gcc dot gnu dot org
  0 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-04-30  8:55 UTC (permalink / raw)
  To: gcc-bugs



-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.4.4                       |4.4.5


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


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

end of thread, other threads:[~2011-05-26 12:45 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-41619-4@http.gcc.gnu.org/bugzilla/>
2010-10-01 11:55 ` [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] ICE in insert_save (caller-save.c) for SPEC CPU2000's 252.eon jakub at gcc dot gnu.org
2011-01-19 20:44 ` law at redhat dot com
2011-01-20  3:49 ` law at redhat dot com
2011-01-21 17:16 ` law at redhat dot com
2011-01-21 17:19 ` law at gcc dot gnu.org
2011-01-21 17:25 ` law at redhat dot com
2011-05-26 12:46 ` ebotcazou at gcc dot gnu.org
2009-10-07 13:10 [Bug c++/41619] New: " kenneth dot hoste at elis dot ugent dot be
2010-04-30  8:55 ` [Bug rtl-optimization/41619] [4.4/4.5/4.6 regression] " jakub at gcc dot gnu dot 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).