[llvm-branch-commits] [clang][CallGraphSection] Add call graph section option and docs (PR #117037)

via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Nov 20 11:53:50 PST 2024


https://github.com/Prabhuk created https://github.com/llvm/llvm-project/pull/117037

This documents the support for computing, storing, and restoring call
graphs with LLVM. This adds the options and the design documentation
for computing and storing the call graphs. To enable, use
`-fcall-graph-section`.

Inferring indirect call targets from a binary is challenging without
source-level information. Hence, the reconstruction of a fine-grained
call graph from the binary is unfeasible for indirect/virtual calls.
To address this, designed solution is to collect the necessary information
to construct the call graph while the source information is present, and
store it in a non-code section of the binary.

Original RFC: https://lists.llvm.org/pipermail/llvm-dev/2021-June/151044.html
Updated RFC: https://lists.llvm.org/pipermail/llvm-dev/2021-July/151739.html





More information about the llvm-branch-commits mailing list