aboutsummaryrefslogtreecommitdiff
path: root/gcc/dse.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2016-02-26 16:53:43 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2016-02-26 16:53:43 +0100
commita2ad54a07a7336103ff30140b591b4d6eb348dfd (patch)
treeae1cf61ff668028960dbbf5e7352ada2e17af643 /gcc/dse.c
parent0884062c2cf3ee1a489591b89350478c4cca2db3 (diff)
downloadgcc-a2ad54a07a7336103ff30140b591b4d6eb348dfd.zip
gcc-a2ad54a07a7336103ff30140b591b4d6eb348dfd.tar.gz
gcc-a2ad54a07a7336103ff30140b591b4d6eb348dfd.tar.bz2
re PR rtl-optimization/69891 (wrong code with -mstringop-strategy=libcall @ i686)
PR rtl-optimization/69891 * dse.c (scan_insn): If we can't figure out memset arguments or they are non-constant, call clear_rhs_from_active_local_stores. * gcc.target/i386/pr69891.c: New test. Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com> From-SVN: r233743
Diffstat (limited to 'gcc/dse.c')
-rw-r--r--gcc/dse.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/dse.c b/gcc/dse.c
index 99f23ca..eef5644 100644
--- a/gcc/dse.c
+++ b/gcc/dse.c
@@ -2556,6 +2556,8 @@ scan_insn (bb_info_t bb_info, rtx_insn *insn)
active_local_stores = insn_info;
}
}
+ else
+ clear_rhs_from_active_local_stores ();
}
}
else if (SIBLING_CALL_P (insn) && reload_completed)