[PATCH] [LoopVectorize] Move LoopAccessAnalysis to its own module

Hal Finkel hfinkel at anl.gov
Wed Feb 11 14:30:02 PST 2015


----- Original Message -----
> From: "Adam Nemet" <anemet at apple.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "Arnold Schwaighofer" <aschwaighofer at apple.com>, "llvm-commits" <llvm-commits at cs.uiuc.edu>, "Nadav
> Rotem(nrotem at apple.com)" <nrotem at apple.com>, reviews+D7285+public+8a97e71255c10d4e at reviews.llvm.org
> Sent: Wednesday, February 11, 2015 4:25:36 PM
> Subject: Re: [PATCH] [LoopVectorize] Move LoopAccessAnalysis to its own module
> 
> 
> > On Feb 11, 2015, at 2:17 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> > 
> > ----- Original Message -----
> >> From: "Adam Nemet" <anemet at apple.com>
> >> To: reviews+D7285+public+8a97e71255c10d4e at reviews.llvm.org
> >> Cc: "Arnold Schwaighofer" <aschwaighofer at apple.com>, "Hal Finkel"
> >> <hfinkel at anl.gov>, "llvm-commits"
> >> <llvm-commits at cs.uiuc.edu>, "Nadav Rotem <nrotem at apple.com>
> >> (nrotem at apple.com)" <nrotem at apple.com>
> >> Sent: Wednesday, February 11, 2015 4:06:56 PM
> >> Subject: Re: [PATCH] [LoopVectorize] Move LoopAccessAnalysis to
> >> its own module
> >> 
> >> 
> >>> On Jan 31, 2015, at 7:17 PM, Adam Nemet <anemet at apple.com> wrote:
> >>> 
> >>> In http://reviews.llvm.org/D7285#116434, @hfinkel wrote:
> >>> 
> >>>> I'm assuming the idea is to turn this into a proper analysis
> >>>> pass,
> >>>> but this is a good intermediate step. LGTM.
> >>> 
> >>> 
> >>> Yes, this was the first step of pure refactoring.  Thanks.
> >> 
> >> I am at a point where turning this into an analysis pass seems to
> >> be
> >> working.  Still missing some testing, etc.
> >> 
> >> It’s a function pass that provides an interface to query the
> >> memory
> >> access information for a given loop.  The result of the analysis
> >> is
> >> computed on-demand when the client queries it and then cached in
> >> the
> >> analysis pass.
> >> 
> >> Does this approach sound reasonable?
> > 
> > Makes sense to me. We have a number of analysis that do on-demand
> > computation (ScalarEvolution and LazyValueInfo, for example).
> 
> Great, thanks, Hal.  I just need to figure out how to get around the
> on-demanded-ness in order to write tests for -analyze.

Can you do it like:
  void ScalarEvolution::print(raw_ostream &OS, const Module *) const {
(which I think it what its -analyze is)?

 -Hal

> 
> Adam
> 
> > 
> > -Hal
> > 
> >> 
> >> Adam
> >> 
> >>> 
> >>> 
> >>> http://reviews.llvm.org/D7285
> >>> 
> >>> EMAIL PREFERENCES
> >>> http://reviews.llvm.org/settings/panel/emailpreferences/
> >>> 
> >>> 
> >> 
> >> 
> > 
> > --
> > Hal Finkel
> > Assistant Computational Scientist
> > Leadership Computing Facility
> > Argonne National Laboratory
> 
> 

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




More information about the llvm-commits mailing list