RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-24 Thread Richard Biener
On Fri, 24 Nov 2023, Tamar Christina wrote: > Hi, > > Having simplified peeling this patch becomes smaller as well: > > This changes the PHI node updates to support early breaks. > It has to support both the case where the loop's exit matches the normal loop > exit and one where the early exit

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-24 Thread Tamar Christina
Hi, Having simplified peeling this patch becomes smaller as well: This changes the PHI node updates to support early breaks. It has to support both the case where the loop's exit matches the normal loop exit and one where the early exit is "inverted", i.e. it's an early exit edge. In the latter

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-20 Thread Tamar Christina
> > > > Ok, so I currently have the following solution. Let me know if you > > agree with it and I'll polish it up today and tomorrow and respin things. > > > > 1. During vect_update_ivs_after_vectorizer we no longer touch any PHIs > aside from > > Just updating IVtemps with the expected

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-17 Thread Richard Biener
On Fri, 17 Nov 2023, Tamar Christina wrote: > > > > > > Yes, but that only works for the inductions marked so. We'd > > > > > > need to mark the others as well, but only for the early exits. > > > > > > > > > > > > > although I don't understand why we use the scalar count, I > > > > > > >

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-17 Thread Tamar Christina
> > > > > Yes, but that only works for the inductions marked so. We'd > > > > > need to mark the others as well, but only for the early exits. > > > > > > > > > > > although I don't understand why we use the scalar count, I > > > > > > suppose the reasoning is that we don't really want to keep

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Tamar Christina
> -Original Message- > From: Tamar Christina > Sent: Thursday, November 16, 2023 3:19 PM > To: Richard Biener > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > break

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Tamar Christina
> -Original Message- > From: Richard Biener > Sent: Thursday, November 16, 2023 2:18 PM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > breaks and arbitr

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Richard Biener
On Thu, 16 Nov 2023, Tamar Christina wrote: > > -Original Message- > > From: Richard Biener > > Sent: Thursday, November 16, 2023 1:36 PM > > To: Tamar Christina > > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > > Subject: RE: [PATCH 7/

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Tamar Christina
> -Original Message- > From: Richard Biener > Sent: Thursday, November 16, 2023 1:36 PM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > breaks and arbitr

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Richard Biener
On Thu, 16 Nov 2023, Tamar Christina wrote: > > > > > > > > > > > > > > Perhaps I'm missing something here? > > > > > > > > > > > > OK, so I refreshed my mind of what > > > > > > vect_update_ivs_after_vectorizer > > > > does. > > > > > > > > > > > > I still do not understand the (complexity of

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Tamar Christina
> > > > > > > > > > > > Perhaps I'm missing something here? > > > > > > > > > > OK, so I refreshed my mind of what > > > > > vect_update_ivs_after_vectorizer > > > does. > > > > > > > > > > I still do not understand the (complexity of the) patch. > > > > > Basically the function computes the new

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Richard Biener
r 16, 2023 10:40 AM > > > > To: Tamar Christina > > > > Cc: gcc-patches@gcc.gnu.org; nd ; > > j...@ventanamicro.com > > > > Subject: RE: [PATCH 7/21]middle-end: update IV update code to > > > > support early breaks and arbitrary exits > &g

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Tamar Christina
> -Original Message- > From: Richard Biener > Sent: Thursday, November 16, 2023 11:28 AM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > breaks and arbitr

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Richard Biener
er 15, 2023 1:23 PM > > > > To: Tamar Christina > > > > Cc: gcc-patches@gcc.gnu.org; nd ; > > j...@ventanamicro.com > > > > Subject: RE: [PATCH 7/21]middle-end: update IV update code to > > > > support early breaks and arbitrary exits > &g

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Tamar Christina
> -Original Message- > From: Richard Biener > Sent: Thursday, November 16, 2023 10:40 AM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > breaks and arbitr

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-16 Thread Richard Biener
er 15, 2023 1:01 PM > > > > To: Tamar Christina > > > > Cc: gcc-patches@gcc.gnu.org; nd ; > > j...@ventanamicro.com > > > > Subject: RE: [PATCH 7/21]middle-end: update IV update code to > > > > support early breaks and a

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-15 Thread Tamar Christina
> -Original Message- > From: Richard Biener > Sent: Wednesday, November 15, 2023 1:23 PM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > breaks and arbitr

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-15 Thread Richard Biener
On Wed, 15 Nov 2023, Tamar Christina wrote: > > -Original Message- > > From: Richard Biener > > Sent: Wednesday, November 15, 2023 1:01 PM > > To: Tamar Christina > > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > > Subject: RE: [PATCH 7/

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-15 Thread Tamar Christina
> -Original Message- > From: Richard Biener > Sent: Wednesday, November 15, 2023 1:01 PM > To: Tamar Christina > Cc: gcc-patches@gcc.gnu.org; nd ; j...@ventanamicro.com > Subject: RE: [PATCH 7/21]middle-end: update IV update code to support early > breaks and arbitr

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-15 Thread Richard Biener
On Wed, 15 Nov 2023, Tamar Christina wrote: > Patch updated to latest trunk: > > Hi All, > > This changes the PHI node updates to support early breaks. > It has to support both the case where the loop's exit matches the normal loop > exit and one where the early exit is "inverted", i.e. it's an

RE: [PATCH 7/21]middle-end: update IV update code to support early breaks and arbitrary exits

2023-11-14 Thread Tamar Christina
Patch updated to latest trunk: Hi All, This changes the PHI node updates to support early breaks. It has to support both the case where the loop's exit matches the normal loop exit and one where the early exit is "inverted", i.e. it's an early exit edge. In the latter case we must always