使用LLVM构建C / C ++程序的内存IR CFG

时间:2013-08-20 15:41:02

标签: c++ compiler-construction llvm

我有兴趣分析C / C ++程序的CFG,其中CFG的节点包含LLVM IR指令。有没有办法利用LLVM来提取这个CFG的持久性内存中对象?我不想在编译器中实现传递;我希望CFG在我自己的程序中进行分析。

1 个答案:

答案 0 :(得分:4)

LLVM IR内存中表示适用于CFG分析,因为所有基本块都已组织为图形。在基本块内,指令序列是线性的。 LLVM中一些有趣的函数内CFG相关代码是:lib/Analysis/CFG.cpplib/Analysis/CFGPrinter.cpp