tilegx.c (tilegx_expand_to_rtl_hook): New.
authorWalter Lee <walt@tilera.com>
Sat, 25 Jan 2014 20:12:23 +0000 (20:12 +0000)
committerWalter Lee <walt@gcc.gnu.org>
Sat, 25 Jan 2014 20:12:23 +0000 (20:12 +0000)
2014-01-25  Walter Lee  <walt@tilera.com>

            * config/tilegx/tilegx.c (tilegx_expand_to_rtl_hook): New.
            (TARGET_EXPAND_TO_RTL_HOOK): Define.

From-SVN: r207077

gcc/ChangeLog
gcc/config/tilegx/tilegx.c

index 563642e..5b9991d 100644 (file)
@@ -1,3 +1,8 @@
+2014-01-25  Walter Lee  <walt@tilera.com>
+
+       * config/tilegx/tilegx.c (tilegx_expand_to_rtl_hook): New.
+       (TARGET_EXPAND_TO_RTL_HOOK): Define.
+
 2014-01-25  Richard Sandiford  <rdsandiford@googlemail.com>
 
        * rtlanal.c (canonicalize_condition): Split out duplicated mode check.
index 654f836..85a46f7 100644 (file)
@@ -719,6 +719,16 @@ tilegx_init_expanders (void)
 }
 
 
+/* Implement TARGET_EXPAND_TO_RTL_HOOK.  */
+static void
+tilegx_expand_to_rtl_hook (void)
+{
+  /* Exclude earlier sets of crtl->uses_pic_offset_table, because we
+     only care about uses actually emitted.  */
+  crtl->uses_pic_offset_table = 0;
+}
+
+
 /* Implement TARGET_SHIFT_TRUNCATION_MASK.  DImode shifts use the mode
    matching insns and therefore guarantee that the shift count is
    modulo 64.  SImode shifts sometimes use the 64 bit version so do
@@ -5515,6 +5525,9 @@ tilegx_file_end (void)
 #undef  TARGET_RTX_COSTS
 #define TARGET_RTX_COSTS tilegx_rtx_costs
 
+#undef  TARGET_EXPAND_TO_RTL_HOOK
+#define TARGET_EXPAND_TO_RTL_HOOK tilegx_expand_to_rtl_hook
+
 #undef  TARGET_SHIFT_TRUNCATION_MASK
 #define TARGET_SHIFT_TRUNCATION_MASK tilegx_shift_truncation_mask