summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/reginfo.c28
-rw-r--r--gcc/rtl.h4
3 files changed, 5 insertions, 32 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ab0c165e4d9..c96e331e283 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2009-04-18 Kazu Hirata <kazu@codesourcery.com>
+
+ * reginfo.c (cannot_change_mode_set_regs): Remove.
+ * rtl.h: Remove the prototype for cannot_change_mode_set_regs.
+
2009-04-08 Anatoly Sokolov <aesok@post.ru>
* config/avr/avr.md (*rotlsi3_8, *rotlsi3_16, *rotlsi3_24 ): Check
diff --git a/gcc/reginfo.c b/gcc/reginfo.c
index 829ff2a4ffd..f31866602eb 100644
--- a/gcc/reginfo.c
+++ b/gcc/reginfo.c
@@ -1311,34 +1311,6 @@ init_subregs_of_mode (void)
return 0;
}
-/* Set bits in *USED which correspond to registers which can't change
- their mode from FROM to any mode in which REGNO was
- encountered. */
-void
-cannot_change_mode_set_regs (HARD_REG_SET *used, enum machine_mode from,
- unsigned int regno)
-{
- struct subregs_of_mode_node dummy, *node;
- enum machine_mode to;
- unsigned char mask;
- unsigned int i;
-
- gcc_assert (subregs_of_mode);
- dummy.block = regno & -8;
- node = (struct subregs_of_mode_node *)
- htab_find_with_hash (subregs_of_mode, &dummy, dummy.block);
- if (node == NULL)
- return;
-
- mask = 1 << (regno & 7);
- for (to = VOIDmode; to < NUM_MACHINE_MODES; to++)
- if (node->modes[to] & mask)
- for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
- if (!TEST_HARD_REG_BIT (*used, i)
- && REG_CANNOT_CHANGE_MODE_P (i, from, to))
- SET_HARD_REG_BIT (*used, i);
-}
-
/* Return 1 if REGNO has had an invalid mode change in CLASS from FROM
mode. */
bool
diff --git a/gcc/rtl.h b/gcc/rtl.h
index cd0316018af..ff09d2aedb5 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2245,10 +2245,6 @@ extern void init_reg_sets (void);
extern void regclass (rtx, int);
extern void reg_scan (rtx, unsigned int);
extern void fix_register (const char *, int, int);
-#ifdef HARD_CONST
-extern void cannot_change_mode_set_regs (HARD_REG_SET *,
- enum machine_mode, unsigned int);
-#endif
extern bool invalid_mode_change_p (unsigned int, enum reg_class,
enum machine_mode);