alias analysis

Since Data Structure alias analysis inherits from ModulePass rather than FunctionPass, does that mean that it performs interprocedural alias analysis? Further, if I compare pointers from two different functions, will I sometimes get a NoAlias response.

Regards,
Ryan

Since Data Structure alias analysis inherits from ModulePass rather than
FunctionPass, does that mean that it performs interprocedural alias
analysis?

yes.

Further, if I compare pointers from two different functions,
will I sometimes get a NoAlias response.

Don't do that :). That's probably a bug in DSA, but fixing it would be impractical.

-Chris

Ryan's second question should be more generally phrased for the entire AliasAnalysis interface, not just DSA: will it work to ask alias queries or mod/ref queries for a pair of pointers or a pair of instructions in two different functions?

--Vikram
http://www.cs.uiuc.edu/~vadve
http://llvm.cs.uiuc.edu/

Ryan's second question should be more generally phrased for the
entire AliasAnalysis interface, not just DSA: will it work to ask
alias queries or mod/ref queries for a pair of pointers or a pair of
instructions in two different functions?

Yes, an implementation should strive to implement that. I believe that globalmodref-aa (the only 'not research' IP alias analysis) does this right.

-Chris