r235672 - in /trunk/gcc: ChangeLog config/rs600...
amodra@gcc.gnu.org
amodra@gcc.gnu.org
Sat Apr 30 00:35:00 GMT 2016
Author: amodra
Date: Sat Apr 30 00:35:39 2016
New Revision: 235672
URL: https://gcc.gnu.org/viewcvs?rev=235672&root=gcc&view=rev
Log:
[RS6000] Allow saving of fixed regs.
As I noted a long time ago in the comment on fixed_reg_p, the real
problem with saving fixed/global regs is that exception frame
unwinding might restore them. So don't emit eh_frame info for any
such reg, and the unwinder won't restore them.
Also, tidy rs6000_savres_strategy. Delaying some checks means we
won't iterate over regs quite so often.
* config/rs6000/rs6000.c (rs6000_savres_strategy): Force inline
restoring when fixed_reg_p, but allow out-of-line or stmw save.
Check for user regs later to avoid unnecessary looping over regs.
Merge user reg check with non-saved reg check. Don't force
inline VR restore when static chain used.
(rs6000_frame_related): Omit eh_frame info for user regs when
saving.
(fixed_regs_p): Delete.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.c
More information about the Gcc-cvs
mailing list