aboutsummaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2014-05-13 10:38:38 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2014-05-13 10:38:38 +0000
commitfccc55155dd303b502f04c8a17af1d0a9f31f6d5 (patch)
tree7c2a545a9dec5b5eecb37bb29488b40f31b09783 /gcc/rtl.h
parent925c1bae48b5b8dcc87a514e6e467582d735aa40 (diff)
downloadgcc-fccc55155dd303b502f04c8a17af1d0a9f31f6d5.zip
gcc-fccc55155dd303b502f04c8a17af1d0a9f31f6d5.tar.gz
gcc-fccc55155dd303b502f04c8a17af1d0a9f31f6d5.tar.bz2
rtl.def (REG): Remove middle field.
gcc/ * rtl.def (REG): Remove middle field. * rtl.h (rtx_def): Add orignal_regno to u2. (ORIGINAL_REGNO): Use it instead of field 1. (REG_ATTRS): Lower field index accordingly. * gengtype.c (adjust_field_rtx_def): Remove handling of ORIGINAL_REGNO. Move REG_ATTRS index down. * print-rtl.c (print_rtx): Move ORIGINAL_REGNO handling to the code that prints the REGNO. From-SVN: r210359
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index 8a93ae1..487bfd0 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -352,6 +352,9 @@ struct GTY((chain_next ("RTX_NEXT (&%h)"),
layout for that case and use the gap for extra code-specific
information. */
+ /* The ORIGINAL_REGNO of a REG. */
+ unsigned int original_regno;
+
/* In a CONST_WIDE_INT (aka hwivec_def), this is the number of
HOST_WIDE_INTs in the hwivec_def. */
unsigned int num_elem;
@@ -1194,7 +1197,8 @@ enum label_kind
/* ORIGINAL_REGNO holds the number the register originally had; for a
pseudo register turned into a hard reg this will hold the old pseudo
register number. */
-#define ORIGINAL_REGNO(RTX) X0UINT (RTX, 1)
+#define ORIGINAL_REGNO(RTX) \
+ (RTL_FLAG_CHECK1 ("ORIGINAL_REGNO", (RTX), REG)->u2.original_regno)
/* Force the REGNO macro to only be used on the lhs. */
static inline unsigned int
@@ -1641,7 +1645,7 @@ do { \
/* The register attribute block. We provide access macros for each value
in the block and provide defaults if none specified. */
-#define REG_ATTRS(RTX) X0REGATTR (RTX, 2)
+#define REG_ATTRS(RTX) X0REGATTR (RTX, 1)
#ifndef GENERATOR_FILE
/* For a MEM rtx, the alias set. If 0, this MEM is not in any alias