On Thu, Sep 3, 2020 at 10:58 AM Jakub Jelinek via Gcc <gcc@gcc.gnu.org> wrote: > > On Thu, Sep 03, 2020 at 10:22:52AM +0200, Erick Ochoa wrote: > > So, I am just wondering is there an interface where I could do something > > like: > > > > ``` > > // vars is the field in pt_solution of type bitmap > > EXECUTE_IF_SET_IN_BITMAP (vars, 0, uid, bi) > > { > > // uid is set > > tree pointed_to = get_tree_with_uid(uid); > > } > > ``` > > There is not.
And there cannot be since the solution includes UIDs of decls that are "fake" and thus never really existed. I think you need to first get a set of candidates you want to transform (to limit the work done below), then use the internal points-to solutions and compute alias sets for this set plus the points-to solution this alias-set aliases. You can then keep the candidate -> alias-set ID -> points-to relation (thus candidates should not be "all variables" for efficiency reasons). Richard. > Jakub >