On Mon, Aug 17, 2020 at 3:22 PM Erick Ochoa <erick.oc...@theobroma-systems.com> wrote: > > Hello, > > I'm looking to understand better the points-to analysis (IPA-PTA) and > the alias analysis (build_alias). > > How is the information produced by IPA-PTA consumed? > > Are alias sets in build_alias computed by the intersections of the > points_to_set(s) (computed by IPA-PTA)? > > My intuition tells me that it could be relatively simple to move > build_alias to be an SIMPLE_IPA_PASS performed just after IPA-PTA, but I > do not have enough experience in GCC to tell if this is correct. What > could be some difficulties which I am not seeing? (Either move, or > create a new IPA-ALIAS SIMPLE_IPA_PASS.) This pass would have the same > sensitivity as IPA-PTA { flow-insensitive, context-insensitive, > field-sensitive } because the alias sets could be computed by the > intersection of points-to-sets.
Both IPA-PTA and build_alias do the same, they build PTA constraint sets, solve them and attach points-to info to SSA names. Just IPA-PTA does this for the whole TU while build_alias does it for a function at a time. So I guess I do not understand your question. Richard. > > Thanks!