add default definition of EH_RETURN_DATA_REGNO
authorTrevor Saunders <tbsaunde+gcc@tbsaunde.org>
Wed, 22 Apr 2015 00:44:08 +0000 (00:44 +0000)
committerTrevor Saunders <tbsaunde@gcc.gnu.org>
Wed, 22 Apr 2015 00:44:08 +0000 (00:44 +0000)
gcc/ChangeLog:

2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

* defaults.h: New definition of EH_RETURN_DATA_REGNO.
* except.c: Remove definition of EH_RETURN_DATA_REGNO.
* builtins.c (expand_builtin): Remove check if
EH_RETURN_DATA_REGNO is defined.
* df-scan.c (df_bb_refs_collect): Likewise.
(df_get_exit_block_use_set): Likewise.
* haifa-sched.c (initiate_bb_reg_pressure_info): Likewise.
* ira-lives.c (process_bb_node_lives): Likewise.
* lra-lives.c (process_bb_lives): Likewise.

From-SVN: r222293

gcc/ChangeLog
gcc/builtins.c
gcc/defaults.h
gcc/df-scan.c
gcc/except.c
gcc/haifa-sched.c
gcc/ira-lives.c
gcc/lra-lives.c

index 58a379b246dfe7c3f5bb75d3daaa759a88b0c730..b9a1b8d01a15a4a532d97bccd703bc86bd6d370d 100644 (file)
@@ -1,3 +1,15 @@
+2015-04-21  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
+
+       * defaults.h: New definition of EH_RETURN_DATA_REGNO.
+       * except.c: Remove definition of EH_RETURN_DATA_REGNO.
+       * builtins.c (expand_builtin): Remove check if
+       EH_RETURN_DATA_REGNO is defined.
+       * df-scan.c (df_bb_refs_collect): Likewise.
+       (df_get_exit_block_use_set): Likewise.
+       * haifa-sched.c (initiate_bb_reg_pressure_info): Likewise.
+       * ira-lives.c (process_bb_node_lives): Likewise.
+       * lra-lives.c (process_bb_lives): Likewise.
+
 2015-04-21  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386.md (ARGP_REG, FRAME_REG, BND2_REG, BND3_REG,
index 92637771eae6d333e3873ead792182c4214b5e68..028d793c34c8bb8f9a7307619c7c4eb2cc50b3de 100644 (file)
@@ -6510,10 +6510,8 @@ expand_builtin (tree exp, rtx target, rtx subtarget, machine_mode mode,
       expand_builtin_eh_return (CALL_EXPR_ARG (exp, 0),
                                CALL_EXPR_ARG (exp, 1));
       return const0_rtx;
-#ifdef EH_RETURN_DATA_REGNO
     case BUILT_IN_EH_RETURN_DATA_REGNO:
       return expand_builtin_eh_return_data_regno (exp);
-#endif
     case BUILT_IN_EXTEND_POINTER:
       return expand_builtin_extend_pointer (CALL_EXPR_ARG (exp, 0));
     case BUILT_IN_EH_POINTER:
index 1d5479895e94a6887e9cfd67385f056e15481e8c..911c2f8df13bfc7e7c9b00a6a1b9c89d8ff45704 100644 (file)
@@ -377,6 +377,12 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #endif
 #endif
 
+/* Provide defaults for stuff that may not be defined when using
+   sjlj exceptions.  */
+#ifndef EH_RETURN_DATA_REGNO
+#define EH_RETURN_DATA_REGNO(N) INVALID_REGNUM
+#endif
+
 /* If we have named section and we support weak symbols, then use the
    .jcr section for recording java classes which need to be registered
    at program start-up time.  */
index 1700be998054c88581a7d7dcf26b051dd5202780..b2e2e5d9382ab84fde2f5f9cbad6390edb0d21f7 100644 (file)
@@ -3332,7 +3332,6 @@ df_bb_refs_collect (struct df_collection_rec *collection_rec, basic_block bb)
       return;
     }
 
-#ifdef EH_RETURN_DATA_REGNO
   if (bb_has_eh_pred (bb))
     {
       unsigned int i;
@@ -3346,7 +3345,6 @@ df_bb_refs_collect (struct df_collection_rec *collection_rec, basic_block bb)
                         bb, NULL, DF_REF_REG_DEF, DF_REF_AT_TOP);
        }
     }
-#endif
 
   /* Add the hard_frame_pointer if this block is the target of a
      non-local goto.  */
@@ -3751,7 +3749,6 @@ df_get_exit_block_use_set (bitmap exit_block_uses)
          bitmap_set_bit (exit_block_uses, i);
     }
 
-#ifdef EH_RETURN_DATA_REGNO
   /* Mark the registers that will contain data for the handler.  */
   if (reload_completed && crtl->calls_eh_return)
     for (i = 0; ; ++i)
@@ -3761,7 +3758,6 @@ df_get_exit_block_use_set (bitmap exit_block_uses)
          break;
        bitmap_set_bit (exit_block_uses, regno);
       }
-#endif
 
 #ifdef EH_RETURN_STACKADJ_RTX
   if ((!HAVE_epilogue || ! epilogue_completed)
index f85e55abab73b6e0eda786d32e0a1af28e4fc2ca..e05e196989975f4e4858d887e4340b2ce73c9e1a 100644 (file)
@@ -174,12 +174,6 @@ along with GCC; see the file COPYING3.  If not see
 #include "cfgloop.h"
 #include "builtins.h"
 
-/* Provide defaults for stuff that may not be defined when using
-   sjlj exceptions.  */
-#ifndef EH_RETURN_DATA_REGNO
-#define EH_RETURN_DATA_REGNO(N) INVALID_REGNUM
-#endif
-
 static GTY(()) int call_site_base;
 
 struct tree_hash_traits : default_hashmap_traits
index 96c038f7156f494303c10355b82eb8346d28dc24..6b231c2505ed0a124ebf06e7b3e72bd7e04b1d31 100644 (file)
@@ -1070,7 +1070,6 @@ initiate_bb_reg_pressure_info (basic_block bb)
       if (NONDEBUG_INSN_P (insn))
        setup_ref_regs (PATTERN (insn));
   initiate_reg_pressure_info (df_get_live_in (bb));
-#ifdef EH_RETURN_DATA_REGNO
   if (bb_has_eh_pred (bb))
     for (i = 0; ; ++i)
       {
@@ -1082,7 +1081,6 @@ initiate_bb_reg_pressure_info (basic_block bb)
          mark_regno_birth_or_death (curr_reg_live, curr_reg_pressure,
                                     regno, true);
       }
-#endif
 }
 
 /* Save current register pressure related info.  */
index b29f5722bfc7d2b4b5e666b9c3bd3028a2e8ced9..2837349ae8d19c31e9cdead5598af9e68defac4a 100644 (file)
@@ -1319,7 +1319,6 @@ process_bb_node_lives (ira_loop_tree_node_t loop_tree_node)
          curr_point++;
        }
 
-#ifdef EH_RETURN_DATA_REGNO
       if (bb_has_eh_pred (bb))
        for (j = 0; ; ++j)
          {
@@ -1328,7 +1327,6 @@ process_bb_node_lives (ira_loop_tree_node_t loop_tree_node)
              break;
            make_hard_regno_born (regno);
          }
-#endif
 
       /* Allocnos can't go in stack regs at the start of a basic block
         that is reached by an abnormal edge. Likewise for call
index 9dfffb6f28788b22df01b9922faa8463065bee04..47a9ba22b5ae6aa0ac18921f94307345e31c16b9 100644 (file)
@@ -954,7 +954,6 @@ process_bb_lives (basic_block bb, int &curr_point, bool dead_insn_p)
        add_reg_note (curr_insn, REG_UNUSED, regno_reg_rtx[j]);
     }
 
-#ifdef EH_RETURN_DATA_REGNO
   if (bb_has_eh_pred (bb))
     for (j = 0; ; ++j)
       {
@@ -964,7 +963,6 @@ process_bb_lives (basic_block bb, int &curr_point, bool dead_insn_p)
          break;
        make_hard_regno_born (regno, false);
       }
-#endif
 
   /* Pseudos can't go in stack regs at the start of a basic block that
      is reached by an abnormal edge. Likewise for call clobbered regs,