diff options
author | Richard Biener <rguenther@suse.de> | 2021-11-11 14:05:49 +0100 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2021-11-11 15:01:26 +0100 |
commit | 8865133614f09caadf48c0b7d05f0331959b3bc1 (patch) | |
tree | 504e33799e8d37fe93b9335eefb2a6b19c60bdd3 /gcc/gimple-range-path.cc | |
parent | 6e30c48120500ef2e8643a7574636ed02567dbb6 (diff) | |
download | gcc-8865133614f09caadf48c0b7d05f0331959b3bc1.zip gcc-8865133614f09caadf48c0b7d05f0331959b3bc1.tar.gz gcc-8865133614f09caadf48c0b7d05f0331959b3bc1.tar.bz2 |
tree-optimization/103188 - avoid running ranger on not-up-to-date SSA
The following splits loop header copying into an analysis phase
that uses ranger and a transform phase that can do without to avoid
running ranger on IL that has SSA form not updated.
2021-11-11 Richard Biener <rguenther@suse.de>
PR tree-optimization/103188
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p):
Remove query parameter, split out check for size
optimization.
(ch_base::m_ranger, cb_base::m_query): Remove.
(ch_base::copy_headers): Split processing loop into
analysis around which we allocate and use ranger and
transform where we do not.
(pass_ch::execute): Do not allocate/free ranger here.
(pass_ch_vect::execute): Likewise.
* gcc.dg/torture/pr103188.c: New testcase.
Diffstat (limited to 'gcc/gimple-range-path.cc')
0 files changed, 0 insertions, 0 deletions