[llvm-commits] [llvm] r80098 - in /llvm/trunk: include/llvm/Analysis/Passes.h include/llvm/LinkAllPasses.h lib/Analysis/ScalarEvolutionAliasAnalysis.cpp test/Analysis/ScalarEvolution/scev-aa.ll

Nick Lewycky nicholas at mxc.ca
Thu Aug 27 12:07:11 PDT 2009


Dan Gohman wrote:
> Author: djg
> Date: Wed Aug 26 09:53:06 2009
> New Revision: 80098
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=80098&view=rev
> Log:
> Create a ScalarEvolution-based AliasAnalysis implementation.
> 
> This is a simple AliasAnalysis implementation which works by making
> ScalarEvolution queries. ScalarEvolution has a more complete understanding
> of arithmetic than BasicAA's collection of ad-hoc checks, so it handles
> some cases that BasicAA misses, for example p[i] and p[i+1] within the
> same iteration of a loop.
> 
> This is currently experimental. It may be that the main use for this pass
> will be to help find cases where BasicAA can be profitably extended, or
> to help in the development of the overall AliasAnalysis infrastructure,
> however it's also possible that it could grow up to become a directly
> useful pass.

Dan, this is very cool!

How does it relate to LoopDependenceAnalysis? It sounds like they're 
both doing similar things but with different interfaces?

Nick



More information about the llvm-commits mailing list