2011-05-04 Stuart Henderson <shenders@gcc.gnu.org>
authorStuart Henderson <shenders@gcc.gnu.org>
Wed, 4 May 2011 11:03:00 +0000 (11:03 +0000)
committerStuart Henderson <shenders@gcc.gnu.org>
Wed, 4 May 2011 11:03:00 +0000 (11:03 +0000)
        From Jie Zhang
        *config/bfin/bfin.c (bfin_extra_live_on_entry): New.
        (TARGET_EXTRA_LIVE_ON_ENTRY): Define.

From-SVN: r173366

gcc/ChangeLog
gcc/config/bfin/bfin.c

index 6f509040f39ac0df4fccd9236c4d8b5c49e8c6b5..d929f4eaec428d811dbe2516e609b3f63f8b1e1d 100644 (file)
@@ -1,3 +1,9 @@
+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
index 596042d139e8eff807f37accd6cc380c20b8635d..4bdc1ac1f590d868e189ee2a9e16aaffa8c62c10 100644 (file)
@@ -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;