summaryrefslogtreecommitdiff
path: root/gcc/config/bfin
diff options
context:
space:
mode:
authorshenders <shenders@138bc75d-0d04-0410-961f-82ee72b054a4>2011-05-04 11:03:00 +0000
committershenders <shenders@138bc75d-0d04-0410-961f-82ee72b054a4>2011-05-04 11:03:00 +0000
commit08d2cf2d88584ba6c1cdee8e64bf0b139ca9e810 (patch)
treea5dacd7729cc5b560cc9737a4b5def2bd08b75d5 /gcc/config/bfin
parentedf1112cb2b52cbcbe4ae0dee5187b414eb68ecb (diff)
downloadgcc-08d2cf2d88584ba6c1cdee8e64bf0b139ca9e810.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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173366 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/bfin')
-rw-r--r--gcc/config/bfin/bfin.c11
1 files changed, 11 insertions, 0 deletions
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;