Using link-time optimization to embed call graphs into binaries

Master Thesis

Access to accurate whole-program call graph analysis is vital for compiler-assisted performance instrumentation tools. For large code bases, however, the creation of the call graph in a separate analysis phase can be cumbersome.

The goal of this thesis is to explore generating the call graph at link-time and embedding it into the binary, thus simplifying the instrumentation workflow.

The technical implementation will be build on top of LLVM's LLD linker and use the existing analysis tools MetaCG and PhASAR.