How Alias Analysis Results is passed to `AAEvalLegacyPass`

Hi, everyone,

I am quite new to LLVM and I want to use LLVM alias results in my project.

As indicated in the, the aa-eval, -print-alias-sets, count-aa passes are used for debugging. However, when I compared the results of opt -basicaa -aa-eval < simple_prog.bc and opt -aa-eval < simple_prog.bc, I found the output lines(stderr) have nothing in differece.

When I look into the code of AliasAnalysisEvaluator.cpp, which is the code for aa-eval commands, I found that in the body of the AAEvalLegacyPass, AAResultsWrapperPass is the host for the results. In the runOnFuction of AAResultsWrapperPass, it seems that all the available passes are included. So my question is how the basicaa is affect the aa-eval after it.