[PATCH] D21910: [CFLAA] Split CFL-AA into one unification-based pass and one inclusion-based pass

Jia Chen via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 30 15:34:52 PDT 2016


grievejia added a comment.

In http://reviews.llvm.org/D21910#471778, @dberlin wrote:

> Given you basically want to reuse the graph, you should refactor that out
>  too.


That's the plan. I've already changed a lot of things here so it may be safer to do that in another patch.

> As we discussed offline, in a perfect world, you want to do something like

>  quickly ask the steens if they are no-alias. If it says "no-alias", you

>  return that, otherwise, you do inclusion based walking)


Agreed. But for now let's build cfl-anders first before we worry about how to combine it with cfl-steens?

Cfl-anders can be implemented in various ways. We could ahead-compute everything just like what we did in cfl-steens, or like you said we could keep the cfl graph and walk it in a memoized demand-driven fashion. If we did it on-demand, we could also either put the logic that combines cfl-anders and cfl-steens into cfl-anders, or we can offload that task to the aa pass manager. It seems that there are lots of design decision to be made here, and I'm still trying to figure out what the best choice would be...


http://reviews.llvm.org/D21910





More information about the llvm-commits mailing list