为 C 代码生成调用图
为了发现特定函数的潜在执行路径,特别是在手动识别不切实际的情况下,对于生成调用图很有用。
使用以下命令创建调用图LLVM:
要使用 LLVM(低级虚拟机)构建调用图,请按照以下步骤操作:
使用 -emit 编译 C 代码-llvm 选项生成 LLVM assembly:
使用带有 -analyze 标志的 opt 工具分析程序集:
生成一个 DOT 文件,表示电话graph:
使用 Graphviz 将 DOT 文件转换为图像格式:
此过程将生成视觉表示调用图的,显示通向目标的所有路径function.
示例:
考虑以下 C 代码:
使用上面概述的步骤,我们可以生成一个调用图:揭示可调用 D() 的所有可能路径。
其他注意事项:
以上是如何使用 LLVM 生成 C 代码调用图?的详细内容。更多信息请关注PHP中文网其他相关文章!