diff options
author | Ted Kremenek <kremenek@apple.com> | 2011-07-19 14:18:48 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2011-07-19 14:18:48 +0000 |
commit | 9e100ea1a8939a1eb40a9d7422fcc56f90ccd6f0 (patch) | |
tree | 020c8bb3ad7b4dfed63a46874f883442f1adb693 /clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp | |
parent | 8b46c00b5f63db5708d5d777e0697c4aa9c7c6cc (diff) | |
download | llvm-9e100ea1a8939a1eb40a9d7422fcc56f90ccd6f0.zip llvm-9e100ea1a8939a1eb40a9d7422fcc56f90ccd6f0.tar.gz llvm-9e100ea1a8939a1eb40a9d7422fcc56f90ccd6f0.tar.bz2 |
Reduce -Wuninitialized time by 22% (on sqlite) by removing the recursive AST crawl.
This is accomplished by forcing the needed expressions for -Wuninitialized to always be CFGElements in the CFG.
This allows us to remove a fair amount of the code for -Wuninitialized.
Some fallout:
- AnalysisBasedWarnings.cpp now specifically toggles the CFGBuilder to create a CFG that is suitable for -Wuninitialized. This
is a layering violation, since the logic for -Wuninitialized is in libAnalysis. This can be fixed with the proper refactoring.
- Some of the source locations for -Wunreachable-code warnings have shifted. While not ideal, this is okay because that analysis
already needs some serious reworking.
llvm-svn: 135480
Diffstat (limited to 'clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions