Hi All,

Thank you both for the reviews.

I have tried to address the concerns about unconditionally moving iv step
calculation to  the loop body by introducing a 
LOOP_VINFO_IV_INCREMENT_INVARIANT_P
macro to determine if the value should calculated in the preheader, or in the 
loop
body.

It will still need to be updated to use IFN_VARYING after Tamars patch lands.

I also finally managed to get a decent riscv build and test setup going and
found some issues, which I have resolved and this is passing riscv regression
tests.

Bootstrap and regression tested on on aarch64, x86-64, and armhf.

Also bootstrapped and regression tested with my upcoming FFR patch which
makes use of this.

KR,
Alfie

Alfie Richards (2):
  vect: add null check for ptr_incr optional in vect_create_data_ref_ptr
  vect: Introduce LOOP_VINFO_IV_INCREMENT

 gcc/tree-ssa-loop-manip.cc  |  21 ++-
 gcc/tree-ssa-loop-manip.h   |   3 +-
 gcc/tree-vect-data-refs.cc  |  46 +------
 gcc/tree-vect-loop-manip.cc |  74 +++++++---
 gcc/tree-vect-loop.cc       |  90 +++++-------
 gcc/tree-vect-stmts.cc      | 265 ++++++++++++++++++------------------
 gcc/tree-vectorizer.h       |  10 +-
 7 files changed, 256 insertions(+), 253 deletions(-)

-- 
2.34.1

Reply via email to