LLVM IR 的静态分析工具

Gun*_*wal 4 static-analysis llvm llvm-ir

我试图找出是否有任何可用的静态分析工具可以对 LLVM IR 执行分析并向开发人员报告问题?

任何建议表示赞赏。

Gun*_*wal 8

对于任何感兴趣的人,我已经能够找到很少的研究工具来对 LLVM IR 进行分析并向开发人员报告错误/警告。以下是名单:

  1. KLEE - 在从 C 源代码生成的 LLVM IR 上运行符号执行并生成报告,如下所述:http : //klee.github.io/tutorials/testing-regex/
  2. KLOVER - 建立在 KLEE 之上,为 C++ 程序生成测试用例
  3. LLBMC - LLVM IR 转换为 Intermediate 逻辑表示,转换为 SMT-LIB 公式。然后使用 SMT 求解器求解 SMT-lib 公式。更多细节可以在这里找到:http : //llbmc.org/files/papers/ASE13.pdf
  4. LAV - 这是一个建立在 LLVM 编译器基础架构之上的错误查找工具。LAV 结合了符号执行、程序控制流的 SAT 编码和有界模型检查的一些特征。