George Karpenkov
d5ef0d2a4b
[analyzer] Better retain count rules for OSObjects
...
Differential Revision: https://reviews.llvm.org/D51184
llvm-svn: 340961
2018-08-29 20:28:33 +00:00
George Karpenkov
ab0011ebc0
[analyzer] Preliminary version of retain count checking for OSObjects
...
Has quite a lot of false positives, disabled behind the flag.
Differential Revision: https://reviews.llvm.org/D50880
llvm-svn: 340502
2018-08-23 00:26:59 +00:00
George Karpenkov
6e9fd1377d
[analyzer] [NFC] Fix minor formatting issues in RetainCountChecker
...
Differential Revision: https://reviews.llvm.org/D51072
llvm-svn: 340378
2018-08-22 01:17:09 +00:00
George Karpenkov
80c9e78e3b
[analyzer] [NFC] Extract a method for creating RefVal from RetEffect in RetainCountChecker
...
Differential Revision: https://reviews.llvm.org/D51071
llvm-svn: 340377
2018-08-22 01:16:49 +00:00
George Karpenkov
efef49cd2f
[analyzer] [NFC] Split up RetainSummaryManager from RetainCountChecker - try #2
...
Turns out it can't be removed from the analyzer since it relies on CallEvent.
Moving to staticAnalyzer/core
Differential Revision: https://reviews.llvm.org/D51023
llvm-svn: 340247
2018-08-21 03:09:02 +00:00
Bruno Cardoso Lopes
bb3b7cff96
Revert "[analyzer] [NFC] Split up RetainSummaryManager from RetainCountChecker"
...
This reverts commit a786521fa66c72edd308baff0c08961b6d964fb1.
Bots haven't caught up yet, but broke modules build with:
../tools/clang/include/clang/StaticAnalyzer/Checkers/MPIFunctionClassifier.h:18:10:
fatal error: cyclic dependency in module 'Clang_StaticAnalyzer_Core':
Clang_StaticAnalyzer_Core -> Clang_Analysis ->
Clang_StaticAnalyzer_Checkers -> Clang_StaticAnalyzer_Core
^
llvm-svn: 340117
2018-08-18 03:22:11 +00:00
George Karpenkov
0ac54fad53
[analyzer] [NFC] Split up RetainSummaryManager from RetainCountChecker
...
ARCMigrator is using code from RetainCountChecker, which is a layering
violation (and it also does it badly, by using a different header, and
then relying on implementation being present in a header file).
This change splits up RetainSummaryManager into a separate library in
lib/Analysis, which can be used independently of a checker.
Differential Revision: https://reviews.llvm.org/D50934
llvm-svn: 340114
2018-08-18 01:45:50 +00:00
George Karpenkov
b1b791b9b1
[analyzer] [NFC] Minor refactoring of ISL-specific code in RetainCountChecker
...
Differential Revision: https://reviews.llvm.org/D50879
llvm-svn: 340098
2018-08-17 21:43:27 +00:00
George Karpenkov
bc0cddf0c8
[analyzer] Re-instate support for MakeCollectable is RetainCountChecker
...
Differential Revision: https://reviews.llvm.org/D50872
llvm-svn: 340097
2018-08-17 21:42:59 +00:00
George Karpenkov
c4d6b93dc7
[analyzer] [NFC] Move canEval function from RetainCountChecker to RetainCountSummaries
...
Differential Revision: https://reviews.llvm.org/D50863
llvm-svn: 340094
2018-08-17 21:42:05 +00:00
George Karpenkov
70c2ee30bc
[analyzer] [NFC] Split up RetainCountChecker
...
At some point, staring at 4k+ LOC file becomes a bit hard.
Differential Revision: https://reviews.llvm.org/D50821
llvm-svn: 340092
2018-08-17 21:41:07 +00:00