diff options
author | Richard Biener <rguenther@suse.de> | 2022-09-22 09:40:40 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-09-22 12:51:52 +0200 |
commit | 4bdf739f835520ccbc433dc9eac461895741f317 (patch) | |
tree | 9b9c4d63e6b02c118ab1e9d17ef97f767cf3b922 /libjava/testsuite/libjava.lang/PR6204.java | |
parent | 41c7d2930a75eda3350956b6d9df9e571f9b494d (diff) | |
download | gcc-4bdf739f835520ccbc433dc9eac461895741f317.zip gcc-4bdf739f835520ccbc433dc9eac461895741f317.tar.gz gcc-4bdf739f835520ccbc433dc9eac461895741f317.tar.bz2 |
tree-optimization/99407 - DSE with data-ref analysis
The following resolves the issue that DSE cannot handle references
with variable offsets well when identifying possible uses of a store.
Instead of just relying on ref_maybe_used_by_stmt_p we use data-ref
analysis, making sure to perform that at most once per stmt. The
new mode is only exercised by the DSE pass before loop optimization
as specified by a new pass parameter and when expensive optimizations
are enabled, so it's disabled below -O2.
PR tree-optimization/99407
* tree-ssa-dse.cc (dse_stmt_to_dr_map): New global.
(dse_classify_store): Use data-ref analysis to disambiguate more uses.
(pass_dse::use_dr_analysis_p): New pass parameter.
(pass_dse::set_pass_param): Implement.
(pass_dse::execute): Allocate and deallocate dse_stmt_to_dr_map.
* passes.def: Allow DR analysis for the DSE pass before loop.
* gcc.dg/vect/tsvc/vect-tsvc-s243.c: Remove XFAIL.
Diffstat (limited to 'libjava/testsuite/libjava.lang/PR6204.java')
0 files changed, 0 insertions, 0 deletions