aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPaolo Bonzini <bonzini@gnu.org>2007-02-23 07:45:34 +0000
committerPaolo Bonzini <bonzini@gcc.gnu.org>2007-02-23 07:45:34 +0000
commitc0729306a62169f2a4fae2a5c16e83d8a485f746 (patch)
tree96a13a92271719c54cd547ea3040ec3575bc0da2 /gcc
parenta47eec17b411a9d858ee62a5237a62ec5238de6f (diff)
downloadgcc-c0729306a62169f2a4fae2a5c16e83d8a485f746.zip
gcc-c0729306a62169f2a4fae2a5c16e83d8a485f746.tar.gz
gcc-c0729306a62169f2a4fae2a5c16e83d8a485f746.tar.bz2
re PR rtl-optimization/30841 (Missed optimizations for sbi/cbi instructions)
2007-02-22 Paolo Bonzini <bonzini@gnu.org> PR rtl-optimization/30841 * fwprop.c (propagate_rtx_1): Accept a VOIDmode replacement address. From-SVN: r122253
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/fwprop.c3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index cd1e85d..adedaa7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-02-22 Paolo Bonzini <bonzini@gnu.org>
+
+ PR rtl-optimization/30841
+ * fwprop.c (propagate_rtx_1): Accept a VOIDmode replacement address.
+
2007-02-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* builtins.c (fold_builtin_frexp): New.
diff --git a/gcc/fwprop.c b/gcc/fwprop.c
index 1ab3e52..6ce9183 100644
--- a/gcc/fwprop.c
+++ b/gcc/fwprop.c
@@ -324,7 +324,8 @@ propagate_rtx_1 (rtx *px, rtx old, rtx new, bool can_appear)
/* Dismiss transformation that we do not want to carry on. */
if (!valid_ops
|| new_op0 == op0
- || GET_MODE (new_op0) != GET_MODE (op0))
+ || !(GET_MODE (new_op0) == GET_MODE (op0)
+ || GET_MODE (new_op0) == VOIDmode))
return true;
canonicalize_address (new_op0);