diff options
author | Richard Biener <rguenther@suse.de> | 2017-11-22 08:47:47 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-11-22 08:47:47 +0000 |
commit | 8f8e53262b59836866fee7e4381117fcf6dc7b38 (patch) | |
tree | f218cf54abd1212cc2bd5811493ef7a76cb39d4d /gcc/tree-if-conv.c | |
parent | ce143aa6e3d1d8dee4dad9cfd71774c5c3b9511b (diff) |
re PR tree-optimization/83089 (ICE: Segmentation fault (in instantiate_scev_name))
2017-11-22 Richard Biener <rguenther@suse.de>
PR tree-optimization/83089
* tree-if-conv.c (pass_if_conversion::execute): If anything
changed reset SCEV and free the number of iteration estimates.
* gcc.dg/pr83089.c: New testcase.
From-SVN: r255044
Diffstat (limited to 'gcc/tree-if-conv.c')
-rw-r--r-- | gcc/tree-if-conv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/tree-if-conv.c b/gcc/tree-if-conv.c index c74c80305f9..37695c2cafe 100644 --- a/gcc/tree-if-conv.c +++ b/gcc/tree-if-conv.c @@ -2959,6 +2959,12 @@ pass_if_conversion::execute (function *fun) && !loop->dont_vectorize)) todo |= tree_if_conversion (loop); + if (todo) + { + free_numbers_of_iterations_estimates (fun); + scev_reset (); + } + if (flag_checking) { basic_block bb; |