Skip to content

Does updating Callgraph result in updating icfg and pag? #1760

@hadi81

Description

@hadi81

I am adding indirect callees for a callsite.

callgraph->getIndCallMap()[callsight].insert(calleeFun);
After doing this, I call updateCallGraph in CallGraph. ICFG, and SVFIRBuilder (PAG) will use updated callgraph to update their graphs with indirect calls.

Questions:
Will there be any effect on running points to analysis.

  1. Will each of update results correctly reflected to points to analysis results?
  2. In other words, after I update any of graph regarding indirect callee results, I want to make sure they are fully reflected in points-to analysis.
    For example, I think pag is the lowest-level result, icfg is the second lowest-level result, and callgraph is the highest-level result. If we simply update call graph and then have points-to analysis fully reflecting this call graph. That is fine. Otherwise, if some information is not reflected, I may need to update lower-level graphs (e.g., pag or icfg). In this case, I am wondering if I have to update pag --- not icfg or update all of these three graphs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions