aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-ch.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2019-05-03 08:18:48 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2019-05-03 08:18:48 +0000
commita09b7f1441cda1392c535293d0e73b3525d8f94e (patch)
treed45ad791f5edc39b0d57bebb4c8a48735c1e2217 /gcc/tree-ssa-loop-ch.c
parente50bb4fe73bb7e1c5c2a4d938f8f9678a3614e86 (diff)
downloadgcc-a09b7f1441cda1392c535293d0e73b3525d8f94e.zip
gcc-a09b7f1441cda1392c535293d0e73b3525d8f94e.tar.gz
gcc-a09b7f1441cda1392c535293d0e73b3525d8f94e.tar.bz2
Backport PRs 86984, 89595, 89698, 89710, 89711, 90071
2019-05-03 Richard Biener <rguenther@suse.de> Backport from mainline 2019-03-14 Richard Biener <rguenther@suse.de> PR middle-end/89698 * fold-const.c (operand_equal_p): For INDIRECT_REF check that the access types are similar. * g++.dg/torture/pr89698.C: New testcase. 2019-03-07 Richard Biener <rguenther@suse.de> PR tree-optimization/89595 * tree-ssa-dom.c (dom_opt_dom_walker::optimize_stmt): Take stmt iterator as reference, take boolean output parameter to indicate whether the stmt was removed and thus the iterator already advanced. (dom_opt_dom_walker::before_dom_children): Re-iterate over stmts created by folding. * gcc.dg/torture/pr89595.c: New testcase. 2019-03-14 Richard Biener <rguenther@suse.de> PR tree-optimization/89710 * tree-ssa-loop-ch.c (should_duplicate_loop_header_p): Use safe_dyn_cast. * gcc.dg/torture/pr89710.c: New testcase. 2019-04-15 Richard Biener <rguenther@suse.de> PR tree-optimization/90071 * tree-ssa-reassoc.c (init_range_entry): Do not pick up abnormal operands from def stmts. * gcc.dg/torture/pr90071.c: New testcase. 2018-08-20 Bernd Edlinger <bernd.edlinger@hotmail.de> PR target/86984 * expr.c (expand_assignment): Assert that bitpos is positive. (store_field): Likewise (expand_expr_real_1): Make sure that bitpos is positive. * config/alpha/alpha.h (CONSTANT_ADDRESS_P): Avoid signed integer overflow. * gcc.target/alpha/pr86984.c: New test. 2019-03-14 Richard Biener <rguenther@suse.de> PR target/89711 * config/i386/i386.c (make_resolver_func): Properly set DECL_CONTEXT on the RESULT_DECL. * config/rs6000/rs6000.c (make_resolver_func): Likewise. From-SVN: r270841
Diffstat (limited to 'gcc/tree-ssa-loop-ch.c')
-rw-r--r--gcc/tree-ssa-loop-ch.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-ssa-loop-ch.c b/gcc/tree-ssa-loop-ch.c
index 92e0c43..1d99be3 100644
--- a/gcc/tree-ssa-loop-ch.c
+++ b/gcc/tree-ssa-loop-ch.c
@@ -99,7 +99,7 @@ should_duplicate_loop_header_p (basic_block header, struct loop *loop,
}
last = last_stmt (header);
- if (gimple_code (last) != GIMPLE_COND)
+ if (!last || gimple_code (last) != GIMPLE_COND)
{
if (dump_file && (dump_flags & TDF_DETAILS))
fprintf (dump_file,