summaryrefslogtreecommitdiff
path: root/gcc/combine.c
diff options
context:
space:
mode:
authornemet <nemet@138bc75d-0d04-0410-961f-82ee72b054a4>2006-02-28 20:32:20 +0000
committernemet <nemet@138bc75d-0d04-0410-961f-82ee72b054a4>2006-02-28 20:32:20 +0000
commitfd95fba452ea7e981bbf13518b730c332c030dc3 (patch)
treeb59a2ff0c0c65abbe656b96ae1d8a37028083f6b /gcc/combine.c
parent136335a28f44c3eeab45ca715f30c6dcfe59e1b4 (diff)
downloadgcc-fd95fba452ea7e981bbf13518b730c332c030dc3.tar.gz
* rtl.h (truncated_to_mode): Declare it.
(struct rtl_hooks): Add reg_truncated_to_mode hook. * rtlhooks-def.h (RTL_HOOKS_REG_TRUNCATED_TO_MODE): New macro. (RTL_HOOKS_INITIALIZER): Include it. * rtlhooks.c (reg_truncated_to_mode_general): New function. * combine.c (RTL_HOOKS_REG_TRUNCATED_TO_MODE): Override to reg_truncated_to_mode. * rtlanal.c (truncated_to_mode): Define it. * simplify-rtx.c (simplify_unary_operation_1): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111573 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/combine.c')
-rw-r--r--gcc/combine.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 443b429976e..32d3f67df4f 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -457,6 +457,9 @@ static rtx gen_lowpart_or_truncate (enum machine_mode, rtx);
#undef RTL_HOOKS_REG_NUM_SIGN_BIT_COPIES
#define RTL_HOOKS_REG_NUM_SIGN_BIT_COPIES reg_num_sign_bit_copies_for_combine
+#undef RTL_HOOKS_REG_TRUNCATED_TO_MODE
+#define RTL_HOOKS_REG_TRUNCATED_TO_MODE reg_truncated_to_mode
+
static const struct rtl_hooks combine_rtl_hooks = RTL_HOOKS_INITIALIZER;