aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Sandiford <rsandifo@redhat.com>2004-01-12 09:20:24 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2004-01-12 09:20:24 +0000
commitc0657872082996e355a09edb07d17ec000dfaac4 (patch)
tree2825ba9bc4a7836eeb1065609cf6ffd5ea9ee286 /gcc
parentd2288d5d766ff3997591950e84713b0a1e72deb7 (diff)
downloadgcc-c0657872082996e355a09edb07d17ec000dfaac4.zip
gcc-c0657872082996e355a09edb07d17ec000dfaac4.tar.gz
gcc-c0657872082996e355a09edb07d17ec000dfaac4.tar.bz2
combine.c (combine_simplify_rtx): Don't pass VOIDmode to simplify_unary_operation if the operand has a known mode.
* combine.c (combine_simplify_rtx): Don't pass VOIDmode to simplify_unary_operation if the operand has a known mode. From-SVN: r75709
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/combine.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dd94d58..1f23cbd 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-01-12 Richard Sandiford <rsandifo@redhat.com>
+
+ * combine.c (combine_simplify_rtx): Don't pass VOIDmode to
+ simplify_unary_operation if the operand has a known mode.
+
2004-01-12 Hartmut Penner <hpenner@de.ibm.com>
* gcc/config/rs6000/rs6000.c (word_offset_memref_operand): New
diff --git a/gcc/combine.c b/gcc/combine.c
index 2c92d24..db139fe 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -3690,6 +3690,8 @@ combine_simplify_rtx (rtx x, enum machine_mode op0_mode, int last,
switch (GET_RTX_CLASS (code))
{
case '1':
+ if (op0_mode == VOIDmode)
+ op0_mode = GET_MODE (XEXP (x, 0));
temp = simplify_unary_operation (code, mode, XEXP (x, 0), op0_mode);
break;
case '<':