diff options
author | Richard Biener <rguenther@suse.de> | 2022-07-11 12:07:05 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2022-07-11 12:09:21 +0200 |
commit | 415d2c38edadf97950eb14b8d7e6b1491c98cdd5 (patch) | |
tree | 9ef0a64efecb571010eec818ecde1c139a36578a | |
parent | 74526710f7f78914e51d4748527cda2d30bbac5c (diff) | |
download | gcc-415d2c38edadf97950eb14b8d7e6b1491c98cdd5.zip gcc-415d2c38edadf97950eb14b8d7e6b1491c98cdd5.tar.gz gcc-415d2c38edadf97950eb14b8d7e6b1491c98cdd5.tar.bz2 |
tree-optimization/106228 - fixup last change
The following fixes the last commit to honor the case we are not
vectorizing a loop.
PR tree-optimization/106228
* tree-vect-data-refs.cc (vect_setup_realignment): Adjust
VUSE compute for the non-loop case.
-rw-r--r-- | gcc/tree-vect-data-refs.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/gcc/tree-vect-data-refs.cc b/gcc/tree-vect-data-refs.cc index 53e52cb..609cacc 100644 --- a/gcc/tree-vect-data-refs.cc +++ b/gcc/tree-vect-data-refs.cc @@ -5777,14 +5777,14 @@ vect_setup_realignment (vec_info *vinfo, stmt_vec_info stmt_info, if (at_loop) *at_loop = loop_for_initial_load; + tree vuse = NULL_TREE; if (loop_for_initial_load) - pe = loop_preheader_edge (loop_for_initial_load); - - tree vuse; - gphi *vphi = get_virtual_phi (loop_for_initial_load->header); - if (vphi) - vuse = PHI_ARG_DEF_FROM_EDGE (vphi, pe); - else + { + pe = loop_preheader_edge (loop_for_initial_load); + if (gphi *vphi = get_virtual_phi (loop_for_initial_load->header)) + vuse = PHI_ARG_DEF_FROM_EDGE (vphi, pe); + } + if (!vuse) vuse = gimple_vuse (gsi_stmt (*gsi)); /* 3. For the case of the optimized realignment, create the first vector |