malhar1995 updated this revision to Diff 111420.
malhar1995 added a comment.
This patch adds the functionality of performing reference counting on the
callee side for Integer Set Library (ISL) to Clang Static Analyzer's
RetainCountChecker.
Reference counting on the callee side can be extensivel
malhar1995 updated this revision to Diff 110514.
malhar1995 marked 7 inline comments as done.
malhar1995 added a comment.
Addressed comments.
P.S: I'm yet to test this callee-side parameter checking functionality on the
actual ISL codebase. I'll do that ASAP.
Repository:
rL LLVM
https://rev
malhar1995 added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp:2521-2523
+ deriveAllocLocation(Ctx, sym);
+ if (!AllocBinding)
+deriveParamLocation(Ctx, sym);
I'm not sure what difference it will make if I change the orderi
malhar1995 created this revision.
Herald added a subscriber: eraman.
Current RetainCountChecker performs reference counting of function
arguments/parameters only on the caller side and not on the callee side.
This patch aims to add support for reference counting on the callee-side for
objects o
malhar1995 added a comment.
@dcoughlin Ping.
Repository:
rL LLVM
https://reviews.llvm.org/D35613
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
malhar1995 updated this revision to Diff 107471.
malhar1995 added a comment.
Removed the checks to see if the symbol type is NULL while printing diagnostics
as they are unnecessary.
Repository:
rL LLVM
https://reviews.llvm.org/D35613
Files:
include/clang/StaticAnalyzer/Checkers/ObjCRetain
malhar1995 added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp:2012
+ } else if (CurrV.getObjKind() == RetEffect::GenericC) {
+if (Sym->getType().isNull()) {
+ os << " returns an object with a ";
NoQ wrote:
malhar1995 updated this revision to Diff 107347.
malhar1995 added a comment.
Addressed all comments except the one where I had to remove the test to see if
the return type was null while emitting diagnostics.
Repository:
rL LLVM
https://reviews.llvm.org/D35613
Files:
include/clang/StaticA
malhar1995 created this revision.
malhar1995 added a project: clang.
As part of my Google Summer of Code project, I am working on adding support for
Integer Set Library (ISL) annotations to the current RetainCountChecker.
Note about ISL:
ISL has annotations __isl_give and __isl_take which are an
malhar1995 updated this revision to Diff 107020.
malhar1995 added a comment.
Added isTrustedReferenceCountAnnotation() again.
Repository:
rL LLVM
https://reviews.llvm.org/D34937
Files:
lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
test/Analysis/retain-release-inline.m
Index: test/A
malhar1995 updated this revision to Diff 106911.
malhar1995 added a comment.
Addressed comments.
Changed the function from isTrustedReferenceCountImplementation() to
hasRCAnnotation() (I'm unable to come up with a better name) as this will be
useful when I add support to RetainCountChecker to ch
malhar1995 added a comment.
In https://reviews.llvm.org/D34937#811500, @dcoughlin wrote:
> Looks good to me, other than a nit on indentation and a request for a little
> bit more info in a comment!
Currently, I have added support for generic annotations for __isl_take and
__isl_give and I hav
malhar1995 updated this revision to Diff 106765.
malhar1995 added a comment.
Checked for "trusted" annotation on the function declaration corresponding to
the function definition.
Repository:
rL LLVM
https://reviews.llvm.org/D34937
Files:
lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
malhar1995 updated this revision to Diff 106685.
malhar1995 added a comment.
Suppresses false positives involving functions which perform reference counting.
Added relevant test-cases to test/Analysis/retain-release-inline.m
https://reviews.llvm.org/D34937
Files:
lib/StaticAnalyzer/Checkers/R
malhar1995 updated this revision to Diff 105292.
malhar1995 added a comment.
Corrected one of the two test-cases added in the last-diff.
Repository:
rL LLVM
https://reviews.llvm.org/D34937
Files:
lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
test/Analysis/retain-release-inline.m
In
malhar1995 added a comment.
In https://reviews.llvm.org/D34937#799504, @dcoughlin wrote:
> Thanks for the tests.
>
> Have you tried this on the ISL codebase to make sure it is suppressing the
> diagnostics in related to reference counting implementation that you expect?
>
> I think it would be g
malhar1995 updated this revision to Diff 105186.
malhar1995 added a comment.
Added relevant test-cases to verify the added functionality.
Repository:
rL LLVM
https://reviews.llvm.org/D34937
Files:
lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
test/Analysis/retain-release-inline.m
I
malhar1995 updated this revision to Diff 105160.
malhar1995 added a comment.
Herald added a subscriber: eraman.
Changed function name from 'isAnnotatedToSkipDiagnostics' to
'isTrustedReferenceCountImplementation'.
Added some test-cases to test/Analysis/retain-release-inline.m.
Applied clang-forma
malhar1995 created this revision.
As part of my Google Summer of Code project, I am working on adding support for
Integer Set Library (ISL) annotations to the current RetainCountChecker.
Hence, to begin with, Dr. Devin Coughlin gave me a task to suppress reference
counting diagnostics for all IS
malhar1995 updated this revision to Diff 105043.
Repository:
rL LLVM
https://reviews.llvm.org/D34937
Files:
lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
Index: lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
===
--- li
malhar1995 updated this revision to Diff 99970.
malhar1995 added a comment.
Applied clang-format only to the changed lines in the final code.
Repository:
rL LLVM
https://reviews.llvm.org/D32449
Files:
.gitignore
lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
test/Analysis/pthreadlo
malhar1995 added a comment.
In https://reviews.llvm.org/D32449#761303, @NoQ wrote:
> Thanks, this is great! Two more things:
>
> - You have touched other code, unrelated to your patch, with clang-format;
> we're usually trying to avoid that, because it creates merge conflicts out of
> nowhere,
malhar1995 updated this revision to Diff 99750.
malhar1995 added a comment.
Addressed previous comments (removed Schrodinger from lock state names, changed
method name setAppropriateLockState to resolvePossiblyDestroyedMutex, added an
assert in resolvePossiblyDestroyedMutex, formatted the code u
malhar1995 added inline comments.
Comment at: lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp:143-146
+if(lstate->isSchrodingerUntouched())
+ state = state->remove(lockR);
+else if(lstate->isSchrodingerUnlocked())
+ state = state->set(lockR, LockState::getUnl
malhar1995 marked 2 inline comments as done.
malhar1995 added a comment.
In https://reviews.llvm.org/D32449#760141, @NoQ wrote:
> Thanks! Your code looks very clear now, and it seems correct to me.
>
> One last thing we definitely should do here would be add regression tests for
> the new functi
malhar1995 updated this revision to Diff 99388.
malhar1995 marked an inline comment as done.
malhar1995 added a comment.
Cleaned up the previous patch.
Added checking of LockState before initializing a mutex as well.
Added separate branches of execution for PthreadSemantics and XNUSemantics.
Add
malhar1995 updated this revision to Diff 99179.
malhar1995 added a comment.
Added context.
Also, I removed the inclusion of iostream and also added the repetitive code to
the function setAppropriateLockState.
Currently working on finding various corner cases and invariants.
Repository:
rL LL
malhar1995 created this revision.
I am currently working on to avoid false positives which currently occur as the
return values of mutex functions like pthread_mutex_destroy() are not taken
into consideration.
The precise description of the bug can be found here:
https://bugs.llvm.org/show_bug
28 matches
Mail list logo