[PATCH] Handle some cases of mismatched types in IRCE

Hal Finkel hfinkel at anl.gov
Sat Jan 24 12:40:06 PST 2015


----- Original Message -----
> From: "Sanjoy Das" <sanjoy at playingwithpointers.com>
> To: reviews+D7082+public+8b032afab4f8a3be at reviews.llvm.org
> Cc: "Philip Reames" <listmail at philipreames.com>, "Hal Finkel" <hfinkel at anl.gov>, "Commit Messages and Patches for
> LLVM" <llvm-commits at cs.uiuc.edu>
> Sent: Saturday, January 24, 2015 2:29:46 PM
> Subject: Re: [PATCH] Handle some cases of mismatched types in IRCE
> 
> > Alright, let's fix this then ;)
> 
> Sure, I'll try to send in a fix soon.
> 
> > Why does calling SE->forgetLoop(L) (as is done on line 2024), not
> > clear the cache used to answer the SE->getBackedgeTakenCount(L)
> > query (on line 2025)? Or am I misunderstanding something?
> 
> That bit of code runs under NDEBUG and VerifyIndVars to check that
> widening the induction variable does not change the backedge taken
> counts computed by scalar evolution.  The reason I brought it up is
> that it too has to compensate for the fact that the backedge taken
> count computed by SCEV before and after running indvars have
> different
> types (so what I faced is not an unknown issue).

I understood your motivation, I just don't understand the code ;) -- why does calling forgetLoop(L) not clear the cache of backedge counts for loop L?

 -Hal

> 
> -- Sanjoy
> 
> >
> >>
> >
> >>
> >
> >> - Sanjoy
> >
> >>
> >
> >> > REPOSITORY
> >
> >>
> >
> >> >
> >
> >>
> >
> >> >   rL LLVM
> >
> >>
> >
> >> >
> >
> >>
> >
> >> > http://reviews.llvm.org/D7082
> >
> >>
> >
> >> >
> >
> >>
> >
> >> > EMAIL PREFERENCES
> >
> >>
> >
> >> >
> >
> >>
> >
> >> >   http://reviews.llvm.org/settings/panel/emailpreferences/
> >
> >>
> >
> >
> >
> > REPOSITORY
> >   rL LLVM
> >
> > http://reviews.llvm.org/D7082
> >
> > EMAIL PREFERENCES
> >   http://reviews.llvm.org/settings/panel/emailpreferences/
> >
> >
> 

-- 
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory



More information about the llvm-commits mailing list