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.zip gcc-991eb6effea6272dcacd6ab1b79eb5ffc7ed8bc2.tar.gz gcc-991eb6effea6272dcacd6ab1b79eb5ffc7ed8bc2.tar.bz2 |
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 6f50904..d929f4e 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 596042d..4bdc1ac1 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; |