[LLVMdev] alias information in codegen

Daniel Berlin dberlin at dberlin.org
Sun Apr 6 20:14:36 PDT 2008


On Thu, Apr 3, 2008 at 10:33 PM, Chris Lattner <sabre at nondot.org> wrote:
> On Apr 3, 2008, at 1:00 PM, Dan Gohman wrote:
>  > * BasicAliasAnalysis, the default AliasAnalysis implementation,
>  > doesn't
>  >   understand lowered GEPs, integer arithmetic, or PHIs, and the
>  >   regular codegen process involves passes that lower GEPs.
>
>  Sure.
>
>
>  > One way to solve this is to use a different AliasAnalysis
>  > implementation.
>  > I haven't looked at it in detail, but I'd guess that the Andersen's
>  > pass handles all of these constructs reasonably well. And it has the
>  > advantage of being much more capable than the BasicAliasAnalysis.
>
>  I haven't tried, but I seriously doubt it.  Most AA's specifically
>  just look at pointers and interprocedural ones are much more
>  interested in this than local ones: this reduces the number of values
>  to track, speeding up analysis and reducing memory use.
>

I agree with Chris here completely..
It will help with GEP's eventually (field sensitive versions are being
worked on), but otherwise, it isn't going to help you here.
Trying to do pointer analysis on very lowered forms is both expensive
and hard.  It is like trying to build a bookshelf out of mashed
potatoes.
:)



More information about the llvm-dev mailing list