【发布时间】:2017-08-11 10:30:56
【问题描述】:
我编写了一个模块传递来生成调用图。我想生成调用图,它包含所有函数,如用户代码中的函数以及库中的函数。
更具体地说,我正在使用 binutils 2.26 https://ftp.gnu.org/gnu/binutils/binutils-2.26.tar.gz
我想为“objdump”生成调用图。 objdump的代码会调用库'libiberty'中的一些函数,这些库中被调用的函数可以调用库中更多的内部函数。
我想要一个包含所有此类函数的调用图。
一种方法是我可以为库中的所有文件以及单独的 .ll 文件中的用户代码发出 llvm 代码。最后使用 llvm-link 将它们组合起来。 但是,如果这里和那里存在依赖关系,这可能会失败。那么我可以通过在 configure file 或 makefile 中进行一些更改来系统地做到这一点,而不会影响任何依赖关系。
非常感谢任何帮助。
【问题讨论】:
标签: makefile clang llvm configure llvm-ir