API for flow/context -sensitive alias analysis?

I’m starting to play around with flow- and context- sensitive AA implementations. I thought it would be interesting to try fitting one into LLVM’s AA framework.

Should I assume that to support flow-/context-sensitive AA queries, I’ll need to define my own AA API, rather than supporting “llvm::AliasAnalysis”?

The AA doc ( http://llvm.org/docs/AliasAnalysis.html ) seems to indicate that the API (or its implementations?) don’t support flow-sensitive analysis. I also don’t see any obvious way for the API to let clients ask context-sensitive questions.

I also looked at the poolalloc docs (Section 4 of those doc’s Latex DSA manual), and my impression is that they too ended up providing their own API rather than implementing “llvm::AliasAnalysis”.

Thanks,
Christian

I'm starting to play around with flow- and context- sensitive AA
implementations. I thought it would be interesting to try fitting one into
LLVM's AA framework.

George, cc'd, is starting to explore this stuff for CFL.

Should I assume that to support flow-/context-sensitive AA queries, I'll
need to define my own AA API, rather than supporting "llvm::AliasAnalysis"?

Yes. It would be interesting to see what you come up with.

The AA doc ( http://llvm.org/docs/AliasAnalysis.html ) seems to indicate
that the API (or its implementations?) don't support flow-sensitive
analysis. I also don't see any obvious way for the API to let clients ask
context-sensitive questions.

You cannot :slight_smile:

I also looked at the poolalloc docs (Section 4 of those doc's Latex DSA
manual), and my impression is that they too ended up providing their own API
rather than implementing "llvm::AliasAnalysis".

It's hard to design a generally useful compiler API without
clients/providers. :slight_smile: