[Bug target/53040] nested functions may trash floating point registers

2013-02-06 Thread ebotcazou at gcc dot gnu.org


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



Eric Botcazou ebotcazou at gcc dot gnu.org changed:



   What|Removed |Added



 CC||ebotcazou at gcc dot

   ||gnu.org



--- Comment #5 from Eric Botcazou ebotcazou at gcc dot gnu.org 2013-02-06 
11:49:59 UTC ---

Can you reconsider?  If that's an obvious fix for an annoying target problem,

then it should be put at least on the 4.7 branch.  There are plenty of

precedents for other targets (x86, SPARC, ARM, etc).


[Bug target/53040] nested functions may trash floating point registers

2013-02-06 Thread amodra at gmail dot com


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



--- Comment #6 from Alan Modra amodra at gmail dot com 2013-02-06 13:31:45 
UTC ---

This one is hardly an annoying bug.  You need

a) nested functions,

b) using floating point,

c) with an unusual set of callee saved fprs,

d) and -Os.



I found the bug only because I wrote a fairly complete test for

prologue/epilogue code.



OTOH, the patch is quite obvious and completely safe..


[Bug target/53040] nested functions may trash floating point registers

2013-02-06 Thread ebotcazou at gcc dot gnu.org


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



--- Comment #7 from Eric Botcazou ebotcazou at gcc dot gnu.org 2013-02-06 
16:45:44 UTC ---

 This one is hardly an annoying bug.  You need

 a) nested functions,

 b) using floating point,

 c) with an unusual set of callee saved fprs,

 d) and -Os.



a) + b) + d) is pretty much standard e.g. for embedded Ada on PowerPC/VxWorks.



 OTOH, the patch is quite obvious and completely safe..



Then I think it's a good candidate for a backport onto the 4.7 branch.


[Bug target/53040] nested functions may trash floating point registers

2013-02-06 Thread dje at gcc dot gnu.org


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



David Edelsohn dje at gcc dot gnu.org changed:



   What|Removed |Added



 CC||dje at gcc dot gnu.org



--- Comment #8 from David Edelsohn dje at gcc dot gnu.org 2013-02-06 22:25:21 
UTC ---

Go ahead and backport it to 4.7 branch.


[Bug target/53040] nested functions may trash floating point registers

2013-02-06 Thread amodra at gcc dot gnu.org


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



--- Comment #9 from Alan Modra amodra at gcc dot gnu.org 2013-02-07 01:39:29 
UTC ---

Author: amodra

Date: Thu Feb  7 01:39:21 2013

New Revision: 195834



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=195834

Log:

PR target/53040

* config/rs6000/rs6000.c (rs6000_savres_strategy): When using

static chain, set REST_INLINE_FPRS too.





Modified:

branches/gcc-4_7-branch/gcc/ChangeLog

branches/gcc-4_7-branch/gcc/config/rs6000/rs6000.c


[Bug target/53040] nested functions may trash floating point registers

2013-02-05 Thread amodra at gmail dot com


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



Alan Modra amodra at gmail dot com changed:



   What|Removed |Added



 Status|ASSIGNED|RESOLVED

 Resolution||FIXED



--- Comment #3 from Alan Modra amodra at gmail dot com 2013-02-06 02:39:54 
UTC ---

Fixed.  Not a regression so not applying to FSF branches.


[Bug target/53040] nested functions may trash floating point registers

2013-02-05 Thread amodra at gcc dot gnu.org


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



--- Comment #4 from Alan Modra amodra at gcc dot gnu.org 2013-02-06 02:46:24 
UTC ---

Author: amodra

Date: Wed Feb  6 02:46:13 2013

New Revision: 195778



URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=195778

Log:

PR target/53040

* config/rs6000/rs6000.c (rs6000_savres_strategy): When using

static chain, set REST_INLINE_FPRS too.





Modified:

branches/ibm/gcc-4_7-branch/gcc/ChangeLog.ibm

branches/ibm/gcc-4_7-branch/gcc/config/rs6000/rs6000.c


[Bug target/53040] nested functions may trash floating point registers

2012-04-20 Thread amodra at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53040

--- Comment #2 from Alan Modra amodra at gcc dot gnu.org 2012-04-20 09:33:23 
UTC ---
Author: amodra
Date: Fri Apr 20 09:33:19 2012
New Revision: 186616

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=186616
Log:
PR target/53040
* config/rs6000/rs6000.c (rs6000_savres_strategy): When using
static chain, set REST_INLINE_FPRS too.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.c


[Bug target/53040] nested functions may trash floating point registers

2012-04-19 Thread amodra at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53040

--- Comment #1 from Alan Modra amodra at gmail dot com 2012-04-19 15:24:30 
UTC ---
Created attachment 27191
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=27191
obvious fix


[Bug target/53040] nested functions may trash floating point registers

2012-04-19 Thread amodra at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53040

Alan Modra amodra at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2012-04-19
 Ever Confirmed|0   |1