aegilops :github::microsoft: · @aegilops
102 followers · 330 posts · Server fosstodon.org

@joxean I think a fine-grained callgraph including call site information would break this tie.

Match the call sites in the two binaries, using instruction-level comparisons. You can then differentiate between the two call edges, based on which call site they are from.

#BinaryDiffing #callgraph #Diaphora

Last updated 2 years ago

JP Lehr · @jplehr
43 followers · 39 posts · Server mast.hpc.social

I'm happy to share that I just released version 0.5.0 \o/

Besides a number of important bug fixes, we have *finally* reworked some internals that gave us a great performance improvement. For several use cases from minutes to seconds.
Thank you so much to everybody who contributed.

If your curious, check it out at github.com/tudasc/MetaCG

#metacg #hpc #programanalysis #callgraph #tudasc

Last updated 2 years ago

aegilops :github::microsoft: · @aegilops
46 followers · 172 posts · Server fosstodon.org

@ehmatthes you could roll your own with Python's ast module, I reckon.

Try :github: CodeQL for this (free for open source). It'd be pretty easy to get call graph nodes and edges and make a GraphViz diagram (or other graph):
github.com/github/codeql/discu

Another option would be TreeSitter, again by :github:. There's a :rust: crate for making graphs from TreeSitter: github.com/tree-sitter/tree-si

(I work at GitHub)

Joern also supports Python: docs.joern.io/cpgql/calls/

#callgraph #python #CodeQL

Last updated 2 years ago