diff options
author | Richard Biener <rguenther@suse.de> | 2024-07-25 08:58:42 +0200 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2024-07-28 19:05:56 +0200 |
commit | 89dc14d6339ddb95400271f844f19387bb103474 (patch) | |
tree | f35e636f186228e1f1bf2cbdad3d117babd83201 /libcpp | |
parent | ab3b0560320b1124a69cf19737fc8ba5861fc281 (diff) | |
download | gcc-89dc14d6339ddb95400271f844f19387bb103474.zip gcc-89dc14d6339ddb95400271f844f19387bb103474.tar.gz gcc-89dc14d6339ddb95400271f844f19387bb103474.tar.bz2 |
tree-optimization/116079 - store motion and clobbers
When we move a store out of an inner loop and remove a clobber in
the process, analysis of the inner loop can run into the clobber
via the meta-data and crash when accessing its basic-block. The
following avoids this by clearing the VDEF which is how it identifies
already processed stores.
PR tree-optimization/116079
* tree-ssa-loop-im.cc (hoist_memory_references): Clear
VDEF of elided clobbers.
* gcc.dg/torture/pr116079.c: New testcase.
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions