[llvm-commits] [llvm] r49203 - /llvm/tags/checker/checker-0001/

Ted Kremenek kremenek at apple.com
Fri Apr 4 00:25:40 PDT 2008


On Apr 3, 2008, at 11:34 PM, Török Edwin wrote:

> Ted Kremenek wrote:
>> Author: kremenek
>> Date: Thu Apr  3 23:36:11 2008
>> New Revision: 49203
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=49203&view=rev
>> Log:
>> Initial tag of source-level static analysis libraries and tools.
>
> This looks interesting, what will  it contain?
> Is it for LLVM IR, or clang AST?
>
> I ask, because I am using LLVM for static analysis too.
>
> Best regards,
> --Edwin

Hi Edwin,

We're building a source-level static analysis framework as part of  
clang, although it also depends on the libs in LLVM, hence the tags in  
both trees.

More specifically, the framework (in clang) contains both a standard  
flow-sensitive dataflow analysis engine and an engine for doing path- 
sensitive dataflow analysis via graph reachability (essentially the  
Reps, Horwitz, Sagiv algorithm).  Bug-finding analyses can be built  
using transfer functions that alter program state; essentially its a  
mix between the ESP and the Metacompilation tool (now Coverity), with  
a focus on finding bugs and being scalable and less on soundness.   
This approach isn't necessarily the only one that we can/will include  
as part of clang, but its a good start since its a tried and true  
technique, and I have my own ideas of how we can implement it to be  
scalable and fast for finding a variety of bugs.  I'll post more about  
this to cfe-dev once things progress a little further.

Ted



More information about the llvm-commits mailing list