aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-fold.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2020-01-08 12:49:14 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2020-01-08 12:49:14 +0000
commitf74c4b2c4427a4309d48bfc45bc140422a75aa6f (patch)
tree00c928724e41d530bce13fae0581a715f2131583 /gcc/gimple-fold.c
parentd597b9445f0fddae407914e1497e3422e46ed15d (diff)
downloadgcc-f74c4b2c4427a4309d48bfc45bc140422a75aa6f.zip
gcc-f74c4b2c4427a4309d48bfc45bc140422a75aa6f.tar.gz
gcc-f74c4b2c4427a4309d48bfc45bc140422a75aa6f.tar.bz2
re PR tree-optimization/93199 (Compile time hog in sink_clobbers)
2019-01-08 Richard Biener <rguenther@suse.de> PR middle-end/93199 c/ * gimple-parser.c (c_parser_parse_gimple_body): Remove __PHI IFN permanently. * gimple-fold.c (rewrite_to_defined_overflow): Mark stmt modified. * tree-ssa-loop-im.c (move_computations_worker): Properly adjust virtual operand, also updating SSA use. * gimple-loop-interchange.cc (loop_cand::undo_simple_reduction): Update stmt after resetting virtual operand. (tree_loop_interchange::move_code_to_inner_loop): Likewise. * gimple-iterator.c (gsi_remove): When not removing the stmt permanently do not delink immediate uses or mark the stmt modified. From-SVN: r280000
Diffstat (limited to 'gcc/gimple-fold.c')
-rw-r--r--gcc/gimple-fold.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/gimple-fold.c b/gcc/gimple-fold.c
index 8c94572..d7c5097 100644
--- a/gcc/gimple-fold.c
+++ b/gcc/gimple-fold.c
@@ -7380,6 +7380,7 @@ rewrite_to_defined_overflow (gimple *stmt)
gimple_assign_set_lhs (stmt, make_ssa_name (type, stmt));
if (gimple_assign_rhs_code (stmt) == POINTER_PLUS_EXPR)
gimple_assign_set_rhs_code (stmt, PLUS_EXPR);
+ gimple_set_modified (stmt, true);
gimple_seq_add_stmt (&stmts, stmt);
gimple *cvt = gimple_build_assign (lhs, NOP_EXPR, gimple_assign_lhs (stmt));
gimple_seq_add_stmt (&stmts, cvt);