aboutsummaryrefslogtreecommitdiff
path: root/gcc/reginfo.c
diff options
context:
space:
mode:
authorKazu Hirata <kazu@codesourcery.com>2009-04-18 11:45:08 +0000
committerKazu Hirata <kazu@gcc.gnu.org>2009-04-18 11:45:08 +0000
commit579e694c111bf8fec6ceb3485bca23e3372d04bf (patch)
tree709745116476b315f89b35b8836c72ae93b1da9e /gcc/reginfo.c
parentee7e3ad3d1df2e0cd3864fd45cb22a6099f10cca (diff)
downloadgcc-579e694c111bf8fec6ceb3485bca23e3372d04bf.zip
gcc-579e694c111bf8fec6ceb3485bca23e3372d04bf.tar.gz
gcc-579e694c111bf8fec6ceb3485bca23e3372d04bf.tar.bz2
reginfo.c (cannot_change_mode_set_regs): Remove.
* reginfo.c (cannot_change_mode_set_regs): Remove. * rtl.h: Remove the prototype for cannot_change_mode_set_regs. From-SVN: r146310
Diffstat (limited to 'gcc/reginfo.c')
-rw-r--r--gcc/reginfo.c28
1 files changed, 0 insertions, 28 deletions
diff --git a/gcc/reginfo.c b/gcc/reginfo.c
index 829ff2a..f318666 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