Commit a5c93f53 by Bin Cheng Committed by Bin Cheng

re PR tree-optimization/81744 (ICE: verify_ssa failed, at tree-ssa.c:1186)

	PR tree-optimization/81744
	* tree-predcom.c (prepare_finalizers_chain): Deep copy expr of
	loop's number of iterations.

	gcc/testsuite
	* gcc.dg/tree-ssa/pr81744.c: New.

From-SVN: r250950
parent eac3ab4a
2017-08-08 Bin Cheng <bin.cheng@arm.com>
PR tree-optimization/81744
* tree-predcom.c (prepare_finalizers_chain): Deep copy expr of
loop's number of iterations.
2017-08-08 Martin Liska <mliska@suse.cz>
* asan.c: Include header files.
......
2017-08-08 Bin Cheng <bin.cheng@arm.com>
PR tree-optimization/81744
* gcc.dg/tree-ssa/pr81744.c: New.
2017-08-08 Marek Polacek <polacek@redhat.com>
PR c++/81607
......
/* { dg-do compile } */
/* { dg-options "-O3 -fno-tree-loop-vectorize -fno-tree-slp-vectorize -fno-inline -fdump-tree-pcom-details" } */
typedef struct {
int a, b;
} CompandSegment;
int a;
CompandSegment *b;
void fn1() {
for (; a; a++)
b[a].a = b[a].b = b[a - 1].a = b[a - 1].b = 0;
}
/* { dg-final { scan-tree-dump-times "Store-stores chain" 2 "pcom"} } */
......@@ -2940,7 +2940,7 @@ prepare_finalizers_chain (struct loop *loop, chain_p chain)
if (TREE_CODE (niters) != INTEGER_CST && TREE_CODE (niters) != SSA_NAME)
{
niters = copy_node (niters);
niters = unshare_expr (niters);
niters = force_gimple_operand (niters, &stmts, true, NULL);
if (stmts)
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment