summaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2013-05-13 13:04:26 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2013-05-13 13:04:26 +0200
commitae6fa899e7000352aa8573a23b1e92c225337ea1 (patch)
tree6346bea605532f76d3b46ee9bfb0d6588ee811de /gcc/ChangeLog
parent4502fe8dfcb1cc2c59b50b868ac75fb5cdd742fc (diff)
downloadgcc-ae6fa899e7000352aa8573a23b1e92c225337ea1.tar.gz
re PR tree-optimization/45216 (Rotate expressions not recognized at tree level)
PR tree-optimization/45216 PR tree-optimization/57157 * tree-ssa-forwprop.c (simplify_rotate): Only recognize the (-Y) & (B - 1) variant if OP is |. * expmed.c (expand_shift_1): For rotations by const0_rtx just return shifted. Use (-op1) & (prec - 1) as other_amount instead of prec - op1. * c-c++-common/rotate-1.c: Add 32 tests with +. * c-c++-common/rotate-1a.c: Adjust. * c-c++-common/rotate-2.c: Add 32 tests with +, expect only 48 rotates. * c-c++-common/rotate-2b.c: New test. * c-c++-common/rotate-3.c: Add 32 tests with +. * c-c++-common/rotate-4.c: Add 32 tests with +, expect only 48 rotates. * c-c++-common/rotate-4b.c: New test. * c-c++-common/rotate-5.c: New test. From-SVN: r198823
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8a3a7338789..785b0907e3f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,13 @@
+2013-05-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/45216
+ PR tree-optimization/57157
+ * tree-ssa-forwprop.c (simplify_rotate): Only recognize
+ the (-Y) & (B - 1) variant if OP is |.
+ * expmed.c (expand_shift_1): For rotations by const0_rtx just
+ return shifted. Use (-op1) & (prec - 1) as other_amount
+ instead of prec - op1.
+
2013-05-13 Martin Jambor <mjambor@suse.cz>
PR middle-end/42371