<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/clang/test/Analysis/retain-release.mm, branch meklort-10.0.0</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.0</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.0'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2019-04-26T02:05:15+00:00</updated>
<entry>
<title>[analyzer] RetainCount: Allow offsets in return values.</title>
<updated>2019-04-26T02:05:15+00:00</updated>
<author>
<name>Artem Dergachev</name>
<email>artem.dergachev@gmail.com</email>
</author>
<published>2019-04-26T02:05:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=e264ac6ae19a5dfce26582c7240df402cba269ad'/>
<id>urn:sha1:e264ac6ae19a5dfce26582c7240df402cba269ad</id>
<content type='text'>
Because RetainCountChecker has custom "local" reasoning about escapes,
it has a separate facility to deal with tracked symbols at end of analysis
and check them for leaks regardless of whether they're dead or not.
This facility iterates over the list of tracked symbols and reports
them as leaks, but it needs to treat the return value specially.

Some custom allocators tend to return the value with an offset, storing
extra metadata at the beginning of the buffer. In this case the return value
would be a non-base region. In order to avoid false positives, we still need to
find the original symbol within the return value, otherwise it'll be unable
to match it to the item in the list of tracked symbols.

Differential Revision: https://reviews.llvm.org/D60991

llvm-svn: 359263
</content>
</entry>
<entry>
<title>[analyzer] RetainCount: A function isn't a CFRetain if it takes no arguments.</title>
<updated>2019-03-15T00:26:17+00:00</updated>
<author>
<name>Artem Dergachev</name>
<email>artem.dergachev@gmail.com</email>
</author>
<published>2019-03-15T00:26:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=f2192b204ff49561cc73fe06a76216f3cab39d84'/>
<id>urn:sha1:f2192b204ff49561cc73fe06a76216f3cab39d84</id>
<content type='text'>
Don't crash when a function has a name that starts with "CF" and ends with
"Retain" but takes 0 arguments. In particular, don't try to treat it as if
it returns its first argument.

These problems are inevitable because the checker is naming-convention-based,
but at least we shouldn't crash.

Differential Revision: https://reviews.llvm.org/D59123

llvm-svn: 356223
</content>
</entry>
<entry>
<title>[analyzer] [RetainCountChecker] Bugfix: in non-OSObject-mode, do not track CXX method calls</title>
<updated>2019-02-05T22:26:44+00:00</updated>
<author>
<name>George Karpenkov</name>
<email>ekarpenkov@apple.com</email>
</author>
<published>2019-02-05T22:26:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=6794aa702a5e80a896a034ccf56d8fb8656d935d'/>
<id>urn:sha1:6794aa702a5e80a896a034ccf56d8fb8656d935d</id>
<content type='text'>
Differential Revision: https://reviews.llvm.org/D57782

llvm-svn: 353227
</content>
</entry>
<entry>
<title>[analyzer] CFRetainReleaseChecker: Don't check C++ methods with the same name.</title>
<updated>2018-08-29T22:39:20+00:00</updated>
<author>
<name>Artem Dergachev</name>
<email>artem.dergachev@gmail.com</email>
</author>
<published>2018-08-29T22:39:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=5a3beea0e3178590b694fae03d39423c30369e98'/>
<id>urn:sha1:5a3beea0e3178590b694fae03d39423c30369e98</id>
<content type='text'>
Don't try to understand what's going on when there's a C++ method called eg.
CFRetain().

Refactor the checker a bit, to use more modern APIs.

Differential Revision: https://reviews.llvm.org/D50866

llvm-svn: 340982
</content>
</entry>
<entry>
<title>[Analyzer] Re-apply r314820 with a fix for StringRef lifetime.</title>
<updated>2017-10-03T23:15:35+00:00</updated>
<author>
<name>George Karpenkov</name>
<email>ekarpenkov@apple.com</email>
</author>
<published>2017-10-03T23:15:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=367fbfcc2019be6876471dd0957f258dfc431387'/>
<id>urn:sha1:367fbfcc2019be6876471dd0957f258dfc431387</id>
<content type='text'>
Fixes the test failure: temporary is now bound to std::string, tests
fully pass on Linux.

This reverts commit b36ee0924038e1d95ea74230c62d46e05f80587e.

llvm-svn: 314859
</content>
</entry>
<entry>
<title>Revert r314820 "[Analyzer] More granular special casing in RetainCountChecker"</title>
<updated>2017-10-03T19:39:02+00:00</updated>
<author>
<name>Tim Shen</name>
<email>timshen91@gmail.com</email>
</author>
<published>2017-10-03T19:39:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=77886fc0f0754bf8d810a16a2ae5ea9db7e00a7e'/>
<id>urn:sha1:77886fc0f0754bf8d810a16a2ae5ea9db7e00a7e</id>
<content type='text'>
The test retain-release.m fails with this patch.

Differential Revision: https://reviews.llvm.org/D38487

llvm-svn: 314831
</content>
</entry>
<entry>
<title>[Analyzer] More granular special casing in RetainCountChecker</title>
<updated>2017-10-03T18:12:15+00:00</updated>
<author>
<name>George Karpenkov</name>
<email>ekarpenkov@apple.com</email>
</author>
<published>2017-10-03T18:12:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=fec6b1afe66ccfeff0c80c9ed0aea1f6daaf5832'/>
<id>urn:sha1:fec6b1afe66ccfeff0c80c9ed0aea1f6daaf5832</id>
<content type='text'>
Only assume that IOBSDNameMatching and friends increment a reference counter
if their return type is a CFMutableDictionaryRef.

Differential Revision: https://reviews.llvm.org/D38487

llvm-svn: 314820
</content>
</entry>
<entry>
<title>[Analyzer] Check function name size before indexing.</title>
<updated>2017-09-15T19:51:26+00:00</updated>
<author>
<name>George Karpenkov</name>
<email>ekarpenkov@apple.com</email>
</author>
<published>2017-09-15T19:51:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=e28adb4fb2a1f773e5f8ed5172df392fc4d40506'/>
<id>urn:sha1:e28adb4fb2a1f773e5f8ed5172df392fc4d40506</id>
<content type='text'>
https://reviews.llvm.org/D37908

llvm-svn: 313385
</content>
</entry>
<entry>
<title>Reland 4: [analyzer] NFC: Update test infrastructure to support multiple constraint managers</title>
<updated>2017-03-03T18:02:02+00:00</updated>
<author>
<name>Dominic Chen</name>
<email>d.c.ddcc@gmail.com</email>
</author>
<published>2017-03-03T18:02:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=184c6242faca0be0188611d45b41235e68ef282a'/>
<id>urn:sha1:184c6242faca0be0188611d45b41235e68ef282a</id>
<content type='text'>
Summary: Replace calls to %clang/%clang_cc1 with %clang_analyze_cc1 when invoking static analyzer, and perform runtime substitution to select the appropriate constraint manager, per D28952.

Reviewers: xazax.hun, NoQ, zaks.anna, dcoughlin

Subscribers: mgorny, rgov, mikhail.ramalho, a.sidorin, cfe-commits

Differential Revision: https://reviews.llvm.org/D30373

llvm-svn: 296895
</content>
</entry>
<entry>
<title>Revert "Reland 3: [analyzer] NFC: Update test infrastructure to support multiple constraint managers"</title>
<updated>2017-03-02T23:30:53+00:00</updated>
<author>
<name>Dominic Chen</name>
<email>d.c.ddcc@gmail.com</email>
</author>
<published>2017-03-02T23:30:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=09d66f7528fcdd16178120c107f71aaaea6b79e1'/>
<id>urn:sha1:09d66f7528fcdd16178120c107f71aaaea6b79e1</id>
<content type='text'>
This reverts commit ea36f1406e1f36bf456c3f3929839b024128e468.

llvm-svn: 296841
</content>
</entry>
</feed>
