LLVM IR的静态分析工具

时间:2017-01-03 21:02:08

标签: llvm static-analysis llvm-ir

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

任何建议表示赞赏。

1 个答案:

答案 0 :(得分:3)

对于任何感兴趣的人,我找到了一些研究工具,可以对LLVM IR进行分析,并向开发人员报告错误/警告。以下是清单:

  1. KLEE(http://llvm.org/pubs/2008-12-OSDI-KLEE.html)-运行从C源代码生成的LLVM IR上的符号执行,并生成报告,如下所述:http://klee.github.io/tutorials/testing-regex/
  2. KLOVER(http://www.cs.utah.edu/~ligd/publications/KLOVER-CAV11.pdf) - 构建于KLEE之上,为C ++程序生成测试用例
  3. LLBMC(http://llbmc.org/) - LLVM IR转换为中间逻辑表示,转换为SMT-LIB公式。然后使用SMT求解器求解SMT-lib公式。有关详细信息,请访问:http://llbmc.org/files/papers/ASE13.pdf
  4. LAV(http://argo.matf.bg.ac.rs/?content=lav) - 这是一个基于LLVM编译器基础架构构建的错误查找工具。 LAV结合了符号执行,程序控制流的SAT编码和有界模型检查的一些特征。