aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2020-01-09 10:41:38 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2020-01-09 10:41:38 +0000
commit00294b189cf3285b17b4ca4135341e2614783553 (patch)
tree5ab6fc8410acb503447ab376adedf55c19922568 /gcc/gimplify.c
parent0f507a365777b403cf058ee1208bf41a7363a728 (diff)
downloadgcc-00294b189cf3285b17b4ca4135341e2614783553.zip
gcc-00294b189cf3285b17b4ca4135341e2614783553.tar.gz
gcc-00294b189cf3285b17b4ca4135341e2614783553.tar.bz2
re PR tree-optimization/93054 (ICE in gimple_set_lhs, at gimple.c:1820)
2020-01-09 Richard Biener <rguenther@suse.de> PR middle-end/93054 * gimplify.c (gimplify_expr): Deal with NOP definitions. * gcc.dg/pr93054.c: New testcase. From-SVN: r280039
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 73fb2e7..4243d3a 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -14622,7 +14622,8 @@ gimplify_expr (tree *expr_p, gimple_seq *pre_p, gimple_seq *post_p,
{
/* Avoid the extra copy if possible. */
*expr_p = create_tmp_reg (TREE_TYPE (name));
- gimple_set_lhs (SSA_NAME_DEF_STMT (name), *expr_p);
+ if (!gimple_nop_p (SSA_NAME_DEF_STMT (name)))
+ gimple_set_lhs (SSA_NAME_DEF_STMT (name), *expr_p);
release_ssa_name (name);
}
}