[PATCH] D20933: Preallocate ExplodedNode hash table
Anna Zaks via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 8 09:36:21 PDT 2016
zaks.anna added a comment.
> For the pile of LLVM projects that I am currently building (llvm, clang, libcxx, libcxxabi), 18.9% of all analyzed
> functions hit the maximum step count. For the previously discussed large .C file, 37% of the analyzed functions hit the maximum step count.
These look high to me. I've looked up some statistics that I've collected years ago and I see a similar number for sqlite, but much lower numbers for other test cases. I tested with the Preview app (~150 files) and a bunch of preprocessed files we had on hand at that moment in both cases the number of reaching timeout was about 1%. sqlite is special because all source code is in that one file, so we can do much more inlining. Which C test case have you used?
(I do not have any numbers for C++.)
Another wrinkle here is that we support "Analyzer shallow mode" (-analyzer-config mode=shallow) , which dials down inlining quite a bit. We have users who analyze during build (believe it or not) and they use the shallow mode by default.
http://reviews.llvm.org/D20933
More information about the cfe-commits
mailing list