On Tue, 11 Jul 2023, Jan Hubicka wrote:
> > > By now we did CCP and FRE so we likely optimized out most of constant
> > > conditionals exposed by inline.
> >
> > So maybe we should simply delay re-propagation of the profile? I
> > think cunrolli doesn't so much care about the profile - cunrolli
> > By now we did CCP and FRE so we likely optimized out most of constant
> > conditionals exposed by inline.
>
> So maybe we should simply delay re-propagation of the profile? I
> think cunrolli doesn't so much care about the profile - cunrolli
> is (was) about abstraction removal. Jump threadi
On Tue, 11 Jul 2023, Jan Hubicka wrote:
> >
> > What I saw most wrecking the profile is when passes turn
> > if (cond) into if (0/1) leaving the CFG adjustment to CFG cleanup
> > which then simply deletes one of the outgoing edges without doing
> > anything to the (guessed) profile.
>
> Yep, I a
>
> What I saw most wrecking the profile is when passes turn
> if (cond) into if (0/1) leaving the CFG adjustment to CFG cleanup
> which then simply deletes one of the outgoing edges without doing
> anything to the (guessed) profile.
Yep, I agree that this is disturbing. At the cfg cleanup time
On Mon, 10 Jul 2023, Jan Hubicka wrote:
> > On Fri, 7 Jul 2023, Jan Hubicka wrote:
> >
> > > >
> > > > Looks good, but I wonder what we can do to at least make the
> > > > multiple exit case behave reasonably? The vectorizer keeps track
> > >
> > > > of a "canonical" exit, would it be possible
On Mon, 10 Jul 2023, Jan Hubicka wrote:
> Hi,
> over weekend I found that vectorizer is missing scale_loop_profile for
> epilogues. It already adjusts loop_info to set max iteraitons, so
> adding it was easy. However now predicts the first loop to iterate at
> most once (which is too much, I supp
> On Fri, 7 Jul 2023, Jan Hubicka wrote:
>
> > >
> > > Looks good, but I wonder what we can do to at least make the
> > > multiple exit case behave reasonably? The vectorizer keeps track
> >
> > > of a "canonical" exit, would it be possible to pass in the main
> > > exit edge and use that inste
Hi,
over weekend I found that vectorizer is missing scale_loop_profile for
epilogues. It already adjusts loop_info to set max iteraitons, so
adding it was easy. However now predicts the first loop to iterate at
most once (which is too much, I suppose it forgets to divide by epilogue
unrolling fact
On Fri, 7 Jul 2023, Jan Hubicka wrote:
> >
> > Looks good, but I wonder what we can do to at least make the
> > multiple exit case behave reasonably? The vectorizer keeps track
>
> > of a "canonical" exit, would it be possible to pass in the main
> > exit edge and use that instead of single_exi
> Hi Both,
>
> Thanks for all the reviews/patches so far 😊
>
> > >
> > > Looks good, but I wonder what we can do to at least make the multiple
> > > exit case behave reasonably? The vectorizer keeps track
> >
> > > of a "canonical" exit, would it be possible to pass in the main exit
> > > edge
>
> Looks good, but I wonder what we can do to at least make the
> multiple exit case behave reasonably? The vectorizer keeps track
> of a "canonical" exit, would it be possible to pass in the main
> exit edge and use that instead of single_exit (), would other
> exits then behave somewhat reaso
Hi Both,
Thanks for all the reviews/patches so far 😊
> >
> > Looks good, but I wonder what we can do to at least make the multiple
> > exit case behave reasonably? The vectorizer keeps track
>
> > of a "canonical" exit, would it be possible to pass in the main exit
> > edge and use that instead
On Thu, 6 Jul 2023, Jan Hubicka wrote:
> Hi,
> original scale_loop_profile was implemented to only handle very simple loops
> produced by vectorizer at that time (basically loops with only one exit and no
> subloops). It also has not been updated to new profile-count API very
> carefully.
> Since
Hi,
original scale_loop_profile was implemented to only handle very simple loops
produced by vectorizer at that time (basically loops with only one exit and no
subloops). It also has not been updated to new profile-count API very carefully.
Since I want to use it from loop peeling and unlooping, I
> On Wed, 28 Jun 2023, Tamar Christina wrote:
>
> > Hi All,
> >
> > There's an existing bug in loop frequency scaling where the if statement
> > checks
> > to see if there's a single exit, and records an dump file note but then
> > continues.
> >
> > It then tries to access the null pointer, wh
On Wed, 28 Jun 2023, Tamar Christina wrote:
> Hi All,
>
> There's an existing bug in loop frequency scaling where the if statement
> checks
> to see if there's a single exit, and records an dump file note but then
> continues.
>
> It then tries to access the null pointer, which of course fails.
Hi All,
There's an existing bug in loop frequency scaling where the if statement checks
to see if there's a single exit, and records an dump file note but then
continues.
It then tries to access the null pointer, which of course fails.
For multiple loop exists it's not really clear how to scale
17 matches
Mail list logo