diff options
author | kazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-18 06:22:04 +0000 |
---|---|---|
committer | kazu <kazu@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-18 06:22:04 +0000 |
commit | 793c96284d16f9a3ba70b0ba74f5e449a421aec5 (patch) | |
tree | dc3af62149dc2475f79163af45e3855d6a8c3641 | |
parent | eeeca2a666ad76def915c227e38ca5d1e6cdddf5 (diff) | |
download | gcc-793c96284d16f9a3ba70b0ba74f5e449a421aec5.tar.gz |
* rtlanal.c (global_reg_mentioned_p_1,
global_reg_mentioned_p): Remove.
* rtl.h: Remove the prototype for global_reg_mentioned_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109871 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/rtl.h | 1 | ||||
-rw-r--r-- | gcc/rtlanal.c | 73 |
3 files changed, 6 insertions, 74 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 562486cc3f2..c2e6f633a83 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-01-18 Kazu Hirata <kazu@codesourcery.com> + + * rtlanal.c (global_reg_mentioned_p_1, + global_reg_mentioned_p): Remove. + * rtl.h: Remove the prototype for global_reg_mentioned_p. + 2006-01-17 Roger Sayle <roger@eyesopen.com> * config/i386/i386.c (COSTS_N_BYTES): New macro. diff --git a/gcc/rtl.h b/gcc/rtl.h index 5cd651c6060..f3ec0659ae7 100644 --- a/gcc/rtl.h +++ b/gcc/rtl.h @@ -1577,7 +1577,6 @@ extern int rtx_varies_p (rtx, int); extern int rtx_addr_varies_p (rtx, int); extern HOST_WIDE_INT get_integer_term (rtx); extern rtx get_related_value (rtx); -extern int global_reg_mentioned_p (rtx); extern int reg_mentioned_p (rtx, rtx); extern int count_occurrences (rtx, rtx, int); extern int reg_referenced_p (rtx, rtx); diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 490c221c9b8..91fb4898b73 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -39,7 +39,6 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #include "function.h" /* Forward declarations */ -static int global_reg_mentioned_p_1 (rtx *, void *); static void set_of_1 (rtx, rtx, void *); static bool covers_regno_p (rtx, unsigned int); static bool covers_regno_no_parallel_p (rtx, unsigned int); @@ -476,78 +475,6 @@ get_related_value (rtx x) return 0; } -/* A subroutine of global_reg_mentioned_p, returns 1 if *LOC mentions - a global register. */ - -static int -global_reg_mentioned_p_1 (rtx *loc, void *data ATTRIBUTE_UNUSED) -{ - int regno; - rtx x = *loc; - - if (! x) - return 0; - - switch (GET_CODE (x)) - { - case SUBREG: - if (REG_P (SUBREG_REG (x))) - { - if (REGNO (SUBREG_REG (x)) < FIRST_PSEUDO_REGISTER - && global_regs[subreg_regno (x)]) - return 1; - return 0; - } - break; - - case REG: - regno = REGNO (x); - if (regno < FIRST_PSEUDO_REGISTER && global_regs[regno]) - return 1; - return 0; - - case SCRATCH: - case PC: - case CC0: - case CONST_INT: - case CONST_DOUBLE: - case CONST: - case LABEL_REF: - return 0; - - case CALL: - /* A non-constant call might use a global register. */ - return 1; - - default: - break; - } - - return 0; -} - -/* Returns nonzero if X mentions a global register. */ - -int -global_reg_mentioned_p (rtx x) -{ - if (INSN_P (x)) - { - if (CALL_P (x)) - { - if (! CONST_OR_PURE_CALL_P (x)) - return 1; - x = CALL_INSN_FUNCTION_USAGE (x); - if (x == 0) - return 0; - } - else - x = PATTERN (x); - } - - return for_each_rtx (&x, global_reg_mentioned_p_1, NULL); -} - /* Return the number of places FIND appears within X. If COUNT_DEST is zero, we do not count occurrences inside the destination of a SET. */ |