[patch] rtlanal.c: Remove global_reg_mentioned_p.
Kazu Hirata
kazu@codesourcery.com
Tue Jan 17 15:32:00 GMT 2006
Hi,
Attached is a patch to remove global_reg_mentioned_p and
global_reg_mentioned_p_1 as they are unused.
The last use of global_reg_mentioned_p seem to be in alias.c on the
4.0 branch. The 4.1 branch doesn't contain any reference to this
function.
Bootstrapped on x86_64-pc-linux-gnu. OK to apply?
Kazu Hirata
2006-01-17 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.
Index: rtl.h
===================================================================
--- rtl.h (revision 109795)
+++ rtl.h (working copy)
@@ -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);
Index: rtlanal.c
===================================================================
--- rtlanal.c (revision 109795)
+++ rtlanal.c (working copy)
@@ -39,7 +39,6 @@ Software Foundation, 51 Franklin Street,
#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. */
More information about the Gcc-patches
mailing list