diff options
author | Richard Biener <rguenther@suse.de> | 2024-10-31 12:58:02 +0100 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2024-11-04 12:24:42 +0100 |
commit | 2e6d9e9f4a0db49376b1435bb6b9c5ac1badf13d (patch) | |
tree | 97a67d1a5f662890053fe5520cfa5b5f855ca7a1 | |
parent | 223da6ac40cdd425ae16b787e2ca758ea665b75f (diff) | |
download | gcc-2e6d9e9f4a0db49376b1435bb6b9c5ac1badf13d.zip gcc-2e6d9e9f4a0db49376b1435bb6b9c5ac1badf13d.tar.gz gcc-2e6d9e9f4a0db49376b1435bb6b9c5ac1badf13d.tar.bz2 |
Move vect_update_inits_of_drs
Move vect_update_inits_of_drs to after setting up the epilog
metadata.
* tree-vect-loop.cc (update_epilogue_loop_vinfo): Update
DR inits after adjusting the epilog metadata.
-rw-r--r-- | gcc/tree-vect-loop.cc | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc index dd18ec9..e6d2414 100644 --- a/gcc/tree-vect-loop.cc +++ b/gcc/tree-vect-loop.cc @@ -12166,11 +12166,6 @@ update_epilogue_loop_vinfo (class loop *epilogue, tree advance) LOOP_VINFO_BBS (epilogue_vinfo) = epilogue_bbs; LOOP_VINFO_NBBS (epilogue_vinfo) = epilogue->num_nodes; - /* Advance data_reference's with the number of iterations of the previous - loop and its prologue. */ - vect_update_inits_of_drs (epilogue_vinfo, advance, PLUS_EXPR); - - /* The EPILOGUE loop is a copy of the original loop so they share the same gimple UIDs. In this loop we update the loop_vec_info of the EPILOGUE to point to the copied statements. We also create a mapping of all LHS' in @@ -12293,6 +12288,10 @@ update_epilogue_loop_vinfo (class loop *epilogue, tree advance) DR_STMT (dr) = STMT_VINFO_STMT (stmt_vinfo); } + /* Advance data_reference's with the number of iterations of the previous + loop and its prologue. */ + vect_update_inits_of_drs (epilogue_vinfo, advance, PLUS_EXPR); + epilogue_vinfo->shared->datarefs_copy.release (); epilogue_vinfo->shared->save_datarefs (); } |