[cfe-commits] r135480 - in /cfe/trunk: lib/Analysis/UninitializedValues.cpp lib/Sema/AnalysisBasedWarnings.cpp test/Sema/warn-unreachable.c test/SemaCXX/warn-unreachable.cpp

Eric Christopher echristo at apple.com
Tue Jul 19 09:26:11 PDT 2011


Hi Ted,

> 
> Reduce -Wuninitialized time by 22% (on sqlite) by removing the recursive AST crawl.
> 

Wow. Nice.

> 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.
> 


I think this caused a failure here:

http://smooshlab.apple.com:8013/builders/gccTestSuite_clang-x86_64-darwin10-RA__c/builds/1192

in one of the uninitialized tests. Do you mind updating that test there?

Thanks!

-eric



More information about the cfe-commits mailing list