aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2009-03-27 22:25:36 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2009-03-27 15:25:36 -0700
commitc619e9823eb70134db45642968eb815bf270bd58 (patch)
treed0ee34c1b25d930f18a8d86229603462b5336bcc /gcc/rtl.h
parent51212b321b1c143c36e54d68e9a29d1a1125f954 (diff)
downloadgcc-c619e9823eb70134db45642968eb815bf270bd58.zip
gcc-c619e9823eb70134db45642968eb815bf270bd58.tar.gz
gcc-c619e9823eb70134db45642968eb815bf270bd58.tar.bz2
jump.c (rtx_renumbered_equal_p): Use subreg_get_info.
2009-03-27 H.J. Lu <hongjiu.lu@intel.com> * jump.c (rtx_renumbered_equal_p): Use subreg_get_info. (true_regnum): Likewise. * rtlanal.c (subreg_info): Moved to ... * rtl.h (subreg_info): Here. New. (subreg_get_info): New. * rtlanal.c (subreg_get_info): Make it extern. From-SVN: r145134
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index e8d42c8..bdb41d6 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -1806,6 +1806,22 @@ extern rtx canonicalize_condition (rtx, rtx, int, rtx *, rtx, int, int);
being made. */
extern rtx get_condition (rtx, rtx *, int, int);
+/* Information about a subreg of a hard register. */
+struct subreg_info
+{
+ /* Offset of first hard register involved in the subreg. */
+ int offset;
+ /* Number of hard registers involved in the subreg. */
+ int nregs;
+ /* Whether this subreg can be represented as a hard reg with the new
+ mode. */
+ bool representable_p;
+};
+
+extern void subreg_get_info (unsigned int, enum machine_mode,
+ unsigned int, enum machine_mode,
+ struct subreg_info *);
+
/* lists.c */
extern void free_EXPR_LIST_list (rtx *);