aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorMaxim Kuvyrkov <maxim@codesourcery.com>2010-07-27 19:38:10 +0000
committerMaxim Kuvyrkov <mkuvyrkov@gcc.gnu.org>2010-07-27 19:38:10 +0000
commitc7c910cee2ebe8faf33297eba3600add9ab233d1 (patch)
treec55f4ddded819c86ddc4cc1def2d79b590ca8a37 /gcc
parent3d489bc712a95777f917e16ae38a8e78935d6f11 (diff)
downloadgcc-c7c910cee2ebe8faf33297eba3600add9ab233d1.zip
gcc-c7c910cee2ebe8faf33297eba3600add9ab233d1.tar.gz
gcc-c7c910cee2ebe8faf33297eba3600add9ab233d1.tar.bz2
re PR target/42495 (redundant memory load)
PR target/42495 PR middle-end/42574 * gcse.c (hoist_expr_reaches_here_p): Remove excessive check. From-SVN: r162592
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gcse.c3
2 files changed, 6 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 36c9a1b..d1b8c54 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,11 @@
2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
+ PR target/42495
+ PR middle-end/42574
+ * gcse.c (hoist_expr_reaches_here_p): Remove excessive check.
+
+2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
+
* gcse.c (hoist_code): Generate new pseudo for every new set insn.
2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
diff --git a/gcc/gcse.c b/gcc/gcse.c
index 812cc0a..9bb0bbd 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -4335,9 +4335,6 @@ hoist_expr_reaches_here_p (basic_block expr_bb, int expr_index, basic_block bb,
else if (visited[pred_bb->index])
continue;
- /* Does this predecessor generate this expression? */
- else if (TEST_BIT (comp[pred_bb->index], expr_index))
- break;
else if (! TEST_BIT (transp[pred_bb->index], expr_index))
break;