diff options
author | Stuart Henderson <shenders@gcc.gnu.org> | 2011-05-04 11:03:00 +0000 |
---|---|---|
committer | Stuart Henderson <shenders@gcc.gnu.org> | 2011-05-04 11:03:00 +0000 |
commit | 991eb6effea6272dcacd6ab1b79eb5ffc7ed8bc2 (patch) | |
tree | a5dacd7729cc5b560cc9737a4b5def2bd08b75d5 /gcc | |
parent | 420ccc84ea380688ba0810c98a9445a041ada471 (diff) | |
download | gcc-991eb6effea6272dcacd6ab1b79eb5ffc7ed8bc2.tar.gz |
2011-05-04 Stuart Henderson <shenders@gcc.gnu.org>
From Jie Zhang
*config/bfin/bfin.c (bfin_extra_live_on_entry): New.
(TARGET_EXTRA_LIVE_ON_ENTRY): Define.
From-SVN: r173366
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/bfin/bfin.c | 11 |
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6f509040f39..d929f4eaec4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2011-05-04 Stuart Henderson <shenders@gcc.gnu.org> + From Jie Zhang + *config/bfin/bfin.c (bfin_extra_live_on_entry): New. + (TARGET_EXTRA_LIVE_ON_ENTRY): Define. + +2011-05-04 Stuart Henderson <shenders@gcc.gnu.org> + From Bernd Schmidt * config/bfin/bfin.h (FUNCTION_PROFILER): Take TARGET_LONG_CALLS into account and save/restore RETS. diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c index 596042d139e..4bdc1ac1f59 100644 --- a/gcc/config/bfin/bfin.c +++ b/gcc/config/bfin/bfin.c @@ -1445,6 +1445,14 @@ bfin_hard_regno_rename_ok (unsigned int old_reg ATTRIBUTE_UNUSED, return 1; } +/* Implement TARGET_EXTRA_LIVE_ON_ENTRY. */ +static void +bfin_extra_live_on_entry (bitmap regs) +{ + if (TARGET_FDPIC) + bitmap_set_bit (regs, FDPIC_REGNO); +} + /* Return the value of the return address for the frame COUNT steps up from the current frame, after the prologue. We punt for everything but the current frame by returning const0_rtx. */ @@ -6732,4 +6740,7 @@ bfin_conditional_register_usage (void) #undef TARGET_TRAMPOLINE_INIT #define TARGET_TRAMPOLINE_INIT bfin_trampoline_init +#undef TARGET_EXTRA_LIVE_ON_ENTRY +#define TARGET_EXTRA_LIVE_ON_ENTRY bfin_extra_live_on_entry + struct gcc_target targetm = TARGET_INITIALIZER; |