LLVM IR 的静态分析工具

Static analysis tools for LLVM IR

我想看看是否有任何静态分析工具可以对 LLVM IR 进行分析并向开发人员报告问题?

如有任何建议,我们将不胜感激。

对于任何感兴趣的人,我已经能够找到一些对 LLVM IR 执行分析并向开发人员报告 errors/warnings 的研究工具。以下是名单:

  1. KLEE - Runs symbolic execution on LLVM IR generated from C source code and generates a report as explained here: http://klee.github.io/tutorials/testing-regex/.
  2. KLOVER - 建立在 KLEE 之上,为 C++ 程序生成测试用例
  3. LLBMC - LLVM IR is converted to Intermediate logical representation, which is converted to SMT-LIB formula. SMT-lib Formula is then solved using SMT solver. More details can be found here: http://llbmc.org/files/papers/ASE13.pdf
  4. LAV - 这是一个建立在 LLVM 编译器基础设施之上的错误查找工具。 LAV 结合了符号执行、程序的 SAT 编码 control-flow 和有界模型检查的一些特性。