The main task of this framework is run the Clang Static Analyzer and Clog on the same codebase and measure differences between them regarding:
- report quality
- runtime performance (time, memory usage)
cd framework PATH=/work/projects/llvm-project/build-release/bin/:$PATH LD_LIBRARY_PATH=/work/projects/llvm-project/build-release/lib \ stack run -- --srcdir /work/projects/juliet/C \ --juliet-dir testcases/CWE457_Use_of_Uninitialized_Variable/ \ --jar /work/projects/metadl/compiler.jar \ --clog-program ../clog-programs \ --juliet-filter "CWE457.*c
Since --juliet-filter
selects which reports from the ground truth to compare against, it is important that it refers to same tests as the ones pointed to by --juliet-dir
.