What is the right way to register an alias analysis pass

Hi everyone,

I am wondering what is the right way to register an alias analysis
pass.

My alias analysis pass is implemented in a dynamic load module. As I
can see, a general way to register a pass looks like:

   llvm::RegisterPass<Analyzer> X("rci", "RCI Pass");

However, registering a type-based analysis uses:

   INITIALIZE_AG_PASS(...)

I think, registering an alias analysis is special, as an alias
analysis should be chained to other alias analysis. So, my question is
how to register an alias analysis properly.

Thanks.

Xiaolong

Hi All,

Guess I figured out the way to register an alias analysis pass.

First, we register an alias analysis pass as normally as we do for other passes. That is,
     
     llvm::RegisterPass<Analyzer> X("rci", "RCI Pass");

Then register this analysis pass also in a group. That is,

    llvm::RegisterAnalysisGroup<AliasAnalysis> Y("rci");

If I am wrong at some point, please get me posted. Thanks.

Xiaolong