Author: dergachev
Date: Thu Feb 21 16:02:47 2019
New Revision: 354638
URL: http://llvm.org/viewvc/llvm-project?rev=354638&view=rev
Log:
[analyzer] MIGChecker: Take advantage of the mig_server_routine annotation.
r354530 has added a new function/block/message attribute "mig_server_routine"
that at
Author: dergachev
Date: Thu Feb 21 16:06:30 2019
New Revision: 354641
URL: http://llvm.org/viewvc/llvm-project?rev=354641&view=rev
Log:
[analyzer] MIGChecker: Improve intermediate diagnostic notes.
Add a BugReporterVisitor for highlighting the events of deallocating a
parameter. All such events a
Author: dergachev
Date: Thu Feb 21 16:09:56 2019
New Revision: 354642
URL: http://llvm.org/viewvc/llvm-project?rev=354642&view=rev
Log:
[analyzer] MIGChecker: Fix an FN when the object is released in a destructor.
When a MIG server routine argument is released in an automatic destructor,
the Stat
Author: dergachev
Date: Thu Feb 21 16:15:14 2019
New Revision: 354643
URL: http://llvm.org/viewvc/llvm-project?rev=354643&view=rev
Log:
[analyzer] MIGChecker: Add support for more APIs.
Add more "consuming" functions. For now only vm_deallocate() was supported.
Add a non-zero value that isn't an
Author: dergachev
Date: Thu Feb 21 16:18:46 2019
New Revision: 354644
URL: http://llvm.org/viewvc/llvm-project?rev=354644&view=rev
Log:
[analyzer] MIGChecker: Enable by default as `osx.MIG'.
With r354643, the checker is feature-rich and polished enough.
rdar://problem/35380337
Differential Revi
Hi all,
I'm perfectly fine with reducing this test case to only test the
`conj_$3\{int, LC3, no stmt, #1\}` part and drop everything else,
because that's what i've been testing when i originally introduced this
test.
The lack of determinism here indeed only affects our own self-debugging
fa
Author: dergachev
Date: Sun Jun 2 14:40:53 2019
New Revision: 362340
URL: http://llvm.org/viewvc/llvm-project?rev=362340&view=rev
Log:
[analyzer] exploded-graph-rewriter: Initial commit.
This is a utility to improve readability and generally manipulate
GraphViz dumps of the analysis graph. Such
Author: dergachev
Date: Sun Jun 2 16:17:56 2019
New Revision: 362343
URL: http://llvm.org/viewvc/llvm-project?rev=362343&view=rev
Log:
[analyzer] exploded-graph-rewriter: An attempt to fix Windows buildbots.
Breakage caused by r362340.
Modified:
cfe/trunk/test/Analysis/exploded-graph-rewrit
Author: dergachev
Date: Sun Jun 2 17:21:00 2019
New Revision: 362347
URL: http://llvm.org/viewvc/llvm-project?rev=362347&view=rev
Log:
Revert "[analyzer] exploded-graph-rewriter: An attempt to fix Windows
buildbots."
This reverts commit r362343.
Instead, disable tests on Windows for now.
Modi
Author: dergachev
Date: Tue Jun 4 19:09:29 2019
New Revision: 362574
URL: http://llvm.org/viewvc/llvm-project?rev=362574&view=rev
Log:
[analyzer] exploded-graph-rewriter: Pick up python from cmake in tests.
This should fix NetBSD buildbots.
Modified:
cfe/trunk/test/Analysis/exploded-graph-r
Author: dergachev
Date: Tue Jun 4 19:09:49 2019
New Revision: 362575
URL: http://llvm.org/viewvc/llvm-project?rev=362575&view=rev
Log:
[analyzer] exploded-graph-rewriter: Add the missing license header!
Modified:
cfe/trunk/utils/analyzer/exploded-graph-rewriter.py
Modified: cfe/trunk/utils/
Author: dergachev
Date: Wed Jun 19 16:33:34 2019
New Revision: 363891
URL: http://llvm.org/viewvc/llvm-project?rev=363891&view=rev
Log:
[analyzer] RetainCount: Add support for OSRequiredCast().
It's a new API for custom RTTI in Apple IOKit/DriverKit framework that is
similar to OSDynamicCast() th
Author: dergachev
Date: Wed Jun 19 16:33:42 2019
New Revision: 363893
URL: http://llvm.org/viewvc/llvm-project?rev=363893&view=rev
Log:
[analyzer] NFC: Change evalCall() to provide a CallEvent.
This changes the checker callback signature to use the modern, easy to
use interface. Additionally, thi
Author: dergachev
Date: Wed Jun 19 16:33:45 2019
New Revision: 363894
URL: http://llvm.org/viewvc/llvm-project?rev=363894&view=rev
Log:
[analyzer] Fix JSON dumps for dynamic type information.
They're now valid JSON.
Differential Revision: https://reviews.llvm.org/D62716
Modified:
cfe/trunk/
Author: dergachev
Date: Wed Jun 19 16:33:39 2019
New Revision: 363892
URL: http://llvm.org/viewvc/llvm-project?rev=363892&view=rev
Log:
[analyzer] DeadStores: Add a crude suppression files generated by DriverKit IIG.
IIG is a replacement for MIG in DriverKit: IIG is autogenerating C++ code.
Suppr
Author: dergachev
Date: Wed Jun 19 16:33:51 2019
New Revision: 363896
URL: http://llvm.org/viewvc/llvm-project?rev=363896&view=rev
Log:
[analyzer] Fix JSON dumps for store clusters.
Include a unique pointer so that it was possible to figure out if it's
the same cluster in different program states
Author: dergachev
Date: Wed Jun 19 16:33:48 2019
New Revision: 363895
URL: http://llvm.org/viewvc/llvm-project?rev=363895&view=rev
Log:
[analyzer] Fix JSON dumps for location contexts.
Location context ID is a property of the location context, not of an item
within it. It's useful to know the id
Author: dergachev
Date: Wed Jun 19 16:33:55 2019
New Revision: 363897
URL: http://llvm.org/viewvc/llvm-project?rev=363897&view=rev
Log:
[analyzer] exploded-graph-rewriter: Fix escaping StringRegions.
Quotes around StringRegions are now escaped and unescaped correctly,
producing valid JSON.
Addit
Author: dergachev
Date: Wed Jun 19 16:33:59 2019
New Revision: 363898
URL: http://llvm.org/viewvc/llvm-project?rev=363898&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement a --diff mode.
In this mode the tool would avoid duplicating the contents of the
program state on every node, repla
Author: dergachev
Date: Thu Jul 11 14:27:42 2019
New Revision: 365827
URL: http://llvm.org/viewvc/llvm-project?rev=365827&view=rev
Log:
[analyzer] exploded-graph-rewriter: Fix filenames in program point.
Fix a typo in JSON field name.
Modified:
cfe/trunk/test/Analysis/exploded-graph-rewriter
Author: dergachev
Date: Thu Jul 11 19:10:33 2019
New Revision: 365861
URL: http://llvm.org/viewvc/llvm-project?rev=365861&view=rev
Log:
[analyzer] exploded-graph-rewriter: Improve source location dumps.
- Correctly display macro expansion and spelling locations.
- Use the same procedure to displa
Author: dergachev
Date: Thu Jul 11 19:16:56 2019
New Revision: 365863
URL: http://llvm.org/viewvc/llvm-project?rev=365863&view=rev
Log:
NFC: Unforget a colon in a few CHECK: directives.
Differential Revision: https://reviews.llvm.org/D64526
Modified:
cfe/trunk/test/Analysis/cfg-rich-construc
Author: dergachev
Date: Thu Aug 8 13:22:32 2019
New Revision: 368338
URL: http://llvm.org/viewvc/llvm-project?rev=368338&view=rev
Log:
[analyzer] Fix scan-build's plist output in plist-html mode.
r366941 accidentally made it delete all plist files
as soon as they're produced.
Modified:
cfe/
Author: dergachev
Date: Tue Aug 13 16:04:44 2019
New Revision: 368765
URL: http://llvm.org/viewvc/llvm-project?rev=368765&view=rev
Log:
[analyzer] Disable the checker-plugins test on Darwin.
Fixes a buildbot.
Modified:
cfe/trunk/test/Analysis/checker-plugins.c
Modified: cfe/trunk/test/Analy
Author: dergachev
Date: Tue Aug 13 16:04:53 2019
New Revision: 368768
URL: http://llvm.org/viewvc/llvm-project?rev=368768&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement manual graph trimming.
When -trim-egraph is unavailable (say, when you're debugging a crash on
a real-world code th
Author: dergachev
Date: Tue Aug 13 16:04:47 2019
New Revision: 368766
URL: http://llvm.org/viewvc/llvm-project?rev=368766&view=rev
Log:
[analyzer] exploded-graph-rewriter: Open the converted graph immediately.
Change the default behavior: the tool no longer dumps the rewritten .dot file
to stdout
Author: dergachev
Date: Tue Aug 13 16:04:50 2019
New Revision: 368767
URL: http://llvm.org/viewvc/llvm-project?rev=368767&view=rev
Log:
[analyzer] exploded-graph-rewriter: NFC: Refactor explorers into trimmers.
Explorers aren't the right abstraction. For the purposes of displaying svg files
we do
Author: dergachev
Date: Tue Aug 13 16:04:56 2019
New Revision: 368769
URL: http://llvm.org/viewvc/llvm-project?rev=368769&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement displaying Store pointers.
They're useful when trying to understand what's going on
inside your LazyCompoundValues.
Author: dergachev
Date: Mon Aug 19 19:15:47 2019
New Revision: 369319
URL: http://llvm.org/viewvc/llvm-project?rev=369319&view=rev
Log:
[analyzer] NFC: Drop support for extra text attached to bug reports.
It was introduced in 2011 but never used since then.
Modified:
cfe/trunk/include/clang/
Author: dergachev
Date: Mon Aug 19 19:15:50 2019
New Revision: 369320
URL: http://llvm.org/viewvc/llvm-project?rev=369320&view=rev
Log:
[analyzer] NFC: Rename GRBugReporter to PathSensitiveBugReporter.
The GR prefix is super ancient.
Modified:
cfe/trunk/include/clang/StaticAnalyzer/Core/BugR
Author: dergachev
Date: Mon Aug 19 19:22:37 2019
New Revision: 369321
URL: http://llvm.org/viewvc/llvm-project?rev=369321&view=rev
Log:
[CallGraph] Take into accound calls that aren't within any function bodies.
This patch improves Clang call graph analysis by adding in expressions
that are not f
Author: dergachev
Date: Thu Jun 20 15:29:40 2019
New Revision: 363995
URL: http://llvm.org/viewvc/llvm-project?rev=363995&view=rev
Log:
[analyzer] DeadStores: Update the crude suppression for files generated by IIG.
They changed the comments that we were looking for.
Modified:
cfe/trunk/lib/
Author: dergachev
Date: Mon Jun 24 19:16:50 2019
New Revision: 364267
URL: http://llvm.org/viewvc/llvm-project?rev=364267&view=rev
Log:
[analyzer] NFC: exploded-graph-rewriter: Extract some code into functions.
Differential Revision: https://reviews.llvm.org/D63684
Modified:
cfe/trunk/utils/
Author: dergachev
Date: Mon Jun 24 19:16:53 2019
New Revision: 364268
URL: http://llvm.org/viewvc/llvm-project?rev=364268&view=rev
Log:
[analyzer] exploded-graph-rewriter: Add support for range constraints.
Diff support included.
A cheap solution is implemented that treats range constraints as
"
Author: dergachev
Date: Mon Jun 24 19:16:56 2019
New Revision: 364269
URL: http://llvm.org/viewvc/llvm-project?rev=364269&view=rev
Log:
[analyzer] exploded-graph-rewriter: Fix escaping for bitwise-or.
'|' is a special character in graphviz, so it needs to be properly
escaped and unescaped.
Modif
Author: dergachev
Date: Mon Jun 24 19:16:47 2019
New Revision: 364266
URL: http://llvm.org/viewvc/llvm-project?rev=364266&view=rev
Log:
[analyzer] Add more timers for performance profiling.
The -analyzer-stats flag now allows you to find out how much time was spent
on AST-based analysis and on pa
Author: dergachev
Date: Tue Jun 25 17:14:49 2019
New Revision: 364365
URL: http://llvm.org/viewvc/llvm-project?rev=364365&view=rev
Log:
[analyzer] exploded-graph-rewriter: Prettier location context dumps.
Make them span wider.
Modified:
cfe/trunk/test/Analysis/exploded-graph-rewriter/environ
Author: dergachev
Date: Mon Jul 1 16:01:55 2019
New Revision: 364864
URL: http://llvm.org/viewvc/llvm-project?rev=364864&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement program point tags.
Keep them on a separate line for more visibility.
Differential Revision: https://reviews.llvm.
Author: dergachev
Date: Mon Jul 1 16:01:59 2019
New Revision: 364865
URL: http://llvm.org/viewvc/llvm-project?rev=364865&view=rev
Log:
[analyzer] exploded-graph-rewriter: Add support for dynamic types.
Slightly cleanup emission of horizontal lines and unhardcode the title
for generic maps.
Diff
Author: dergachev
Date: Mon Jul 1 16:02:10 2019
New Revision: 364868
URL: http://llvm.org/viewvc/llvm-project?rev=364868&view=rev
Log:
[analyzer] CStringChecker: Modernize to use CallDescriptions.
This patch uses the new CDF_MaybeBuiltin flag to handle C library functions.
It's mostly an NFC/ref
Author: dergachev
Date: Mon Jul 1 16:02:14 2019
New Revision: 364869
URL: http://llvm.org/viewvc/llvm-project?rev=364869&view=rev
Log:
[analyzer] NonnullGlobalConstants: Don't be confused by a _Nonnull attribute.
The NonnullGlobalConstants checker models the rule "it doesn't make sense
to make a
Author: dergachev
Date: Mon Jul 1 16:02:18 2019
New Revision: 364870
URL: http://llvm.org/viewvc/llvm-project?rev=364870&view=rev
Log:
[analyzer] Fix invalidation when returning into a ctor initializer.
Due to RVO the target region of a function that returns an object by
value isn't necessarily
Author: dergachev
Date: Mon Jul 1 16:02:03 2019
New Revision: 364866
URL: http://llvm.org/viewvc/llvm-project?rev=364866&view=rev
Log:
[analyzer] NFC: Add a convenient CallDescriptionMap class.
It encapsulates the procedure of figuring out whether a call event
corresponds to a function that's mo
Author: dergachev
Date: Mon Jul 1 16:02:07 2019
New Revision: 364867
URL: http://llvm.org/viewvc/llvm-project?rev=364867&view=rev
Log:
[analyzer] NFC: CallDescription: Implement describing C library functions.
When matching C standard library functions in the checker, it's easy to forget
that th
Author: dergachev
Date: Mon Jul 1 16:06:08 2019
New Revision: 364871
URL: http://llvm.org/viewvc/llvm-project?rev=364871&view=rev
Log:
[analyzer] exploded-graph-rewriter: NFC: Add a forgotten test file.
This fell off of r364865.
Added:
cfe/trunk/test/Analysis/exploded-graph-rewriter/dynamic
Author: dergachev
Date: Mon Jul 1 19:17:50 2019
New Revision: 364880
URL: http://llvm.org/viewvc/llvm-project?rev=364880&view=rev
Log:
[analyzer] exploded-graph-rewriter: Add support for objects under construction.
This trait is Environment-like, so there was a chance to re-use a lot of code.
D
Author: dergachev
Date: Mon Jul 1 19:17:53 2019
New Revision: 364881
URL: http://llvm.org/viewvc/llvm-project?rev=364881&view=rev
Log:
[analyzer] exploded-graph-rewriter: Improve program point dumps.
- Take advantage of the stmt_point_kind.
- Dump block IDs for BlockEntrance nodes.
- Don't dump
Author: dergachev
Date: Mon Jul 1 19:17:56 2019
New Revision: 364882
URL: http://llvm.org/viewvc/llvm-project?rev=364882&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement a dark color scheme.
Addresses a popular request. Activated via --dark.
Differential Revision: https://reviews.llv
Author: dergachev
Date: Tue Jul 2 18:26:35 2019
New Revision: 364990
URL: http://llvm.org/viewvc/llvm-project?rev=364990&view=rev
Log:
[analyzer] exploded-graph-rewriter: Collapse very long statement pretty-prints.
When printing various statements that include braces (compound
statements, lambda
Author: dergachev
Date: Tue Jul 2 18:26:32 2019
New Revision: 364989
URL: http://llvm.org/viewvc/llvm-project?rev=364989&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement checker messages.
They are displayed as raw lines and diffed via difflib on a per-checker basis.
Differential Revi
Author: dergachev
Date: Tue Jul 2 18:26:41 2019
New Revision: 364992
URL: http://llvm.org/viewvc/llvm-project?rev=364992&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement bug nodes and sink nodes.
Add a label to nodes that have a bug report attached or on which
the analysis was general
Author: dergachev
Date: Tue Jul 2 18:26:38 2019
New Revision: 364991
URL: http://llvm.org/viewvc/llvm-project?rev=364991&view=rev
Log:
[analyzer] exploded-graph-rewriter: NFC: Add more comments.
Modified:
cfe/trunk/utils/analyzer/exploded-graph-rewriter.py
Modified: cfe/trunk/utils/analyzer
Author: dergachev
Date: Wed Jul 3 13:48:23 2019
New Revision: 365085
URL: http://llvm.org/viewvc/llvm-project?rev=365085&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement a black-and-white color scheme.
For accessibility!
Differential Revision: https://reviews.llvm.org/D64153
Modifie
Author: dergachev
Date: Mon Jul 8 16:54:14 2019
New Revision: 365410
URL: http://llvm.org/viewvc/llvm-project?rev=365410&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement a topology-only mode.
In this mode the rewriter will only rewrite program points
and omit program states. Useful fo
Author: dergachev
Date: Mon Jul 8 16:54:11 2019
New Revision: 365409
URL: http://llvm.org/viewvc/llvm-project?rev=365409&view=rev
Log:
[analyzer] exploded-graph-rewriter: Implement a single-path mode.
Instead of rewriting the whole graph, rewrite the leftmost path in the
graph. Useful for trimme
Author: dergachev
Date: Tue May 14 18:19:19 2019
New Revision: 360737
URL: http://llvm.org/viewvc/llvm-project?rev=360737&view=rev
Log:
[analyzer] MIGChecker: Add support for os_ref_retain().
Suppress MIG checker false positives that occur when the programmer increments
the reference count before
Author: dergachev
Date: Tue May 14 18:36:41 2019
New Revision: 360739
URL: http://llvm.org/viewvc/llvm-project?rev=360739&view=rev
Log:
[analyzer] MIGChecker: Fix redundant semicolon.
Modified:
cfe/trunk/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
Modified: cfe/trunk/lib/StaticAnalyzer/Checke
Author: dergachev
Date: Wed May 15 11:41:32 2019
New Revision: 360790
URL: http://llvm.org/viewvc/llvm-project?rev=360790&view=rev
Log:
[analyzer] RetainCount: Fix os_returns_retained_on_zero with weird return types.
The checker was crashing when it was trying to assume a structure
to be null or
Author: dergachev
Date: Thu May 23 18:34:22 2019
New Revision: 361586
URL: http://llvm.org/viewvc/llvm-project?rev=361586&view=rev
Log:
[CFG] NFC: Remove implicit conversion from CFGTerminator to Stmt *.
Turn it into a variant class instead. This conversion does indeed save some code
but there's
Author: dergachev
Date: Thu May 23 18:34:26 2019
New Revision: 361587
URL: http://llvm.org/viewvc/llvm-project?rev=361587&view=rev
Log:
[CFG] NFC: Modernize a test file for constructor initializer CFGs.
Move FileCheck directives around so that it was easy to understand
what tests what and what ef
Author: dergachev
Date: Thu May 23 19:29:18 2019
New Revision: 361592
URL: http://llvm.org/viewvc/llvm-project?rev=361592&view=rev
Log:
[analyzer] NFC: Prevent multi-file plist test from spamming up the build folder.
It was producing an HTML report with a random name on every tests run
and never
Author: dergachev
Date: Fri May 24 16:37:08 2019
New Revision: 361681
URL: http://llvm.org/viewvc/llvm-project?rev=361681&view=rev
Log:
[CFG] Add branch to skip vbase inits when they're handled by superclass.
This patch adds the run-time CFG branch that would skip initialization of
virtual base c
Author: dergachev
Date: Fri May 24 16:37:11 2019
New Revision: 361682
URL: http://llvm.org/viewvc/llvm-project?rev=361682&view=rev
Log:
[analyzer] Add a prunable note for skipping vbase inits in subclasses.
When initialization of virtual base classes is skipped, we now tell the user
about it, bec
Author: dergachev
Date: Wed May 29 11:49:31 2019
New Revision: 362009
URL: http://llvm.org/viewvc/llvm-project?rev=362009&view=rev
Log:
[analyzer] SATestBuild.py: Use driver for analyzing single-file tests.
Don't bother coming up with a -cc1 run-line ourselves.
This, in particular, gets rid of a
Author: dergachev
Date: Wed Dec 12 17:30:47 2018
New Revision: 349000
URL: http://llvm.org/viewvc/llvm-project?rev=349000&view=rev
Log:
[analyzer] RunLoopAutoreleaseLeakChecker: Come up with a test for r348822.
Statement memoization was removed in r348822 because it was noticed to cause
memory co
Author: dergachev
Date: Fri Dec 14 12:47:58 2018
New Revision: 349190
URL: http://llvm.org/viewvc/llvm-project?rev=349190&view=rev
Log:
[analyzer] MoveChecker: Improve invalidation policies.
If a moved-from object is passed into a conservatively evaluated function
by pointer or by reference, we a
Author: dergachev
Date: Fri Dec 14 12:52:57 2018
New Revision: 349191
URL: http://llvm.org/viewvc/llvm-project?rev=349191&view=rev
Log:
[analyzer] MoveChecker Pt.6: Suppress the warning for the move-safe STL classes.
Some C++ standard library classes provide additional guarantees about their
stat
Author: dergachev
Date: Fri Dec 14 17:50:58 2018
New Revision: 349225
URL: http://llvm.org/viewvc/llvm-project?rev=349225&view=rev
Log:
[analyzer] MoveChecker: NFC: De-duplicate a few checks.
No functional change intended.
Differential Revision: https://reviews.llvm.org/D55387
Modified:
cfe
Author: dergachev
Date: Fri Dec 14 17:53:38 2018
New Revision: 349226
URL: http://llvm.org/viewvc/llvm-project?rev=349226&view=rev
Log:
[analyzer] MoveChecker: Add checks for dereferencing a smart pointer after move.
Calling operator*() or operator->() on a null STL smart pointer is
undefined beh
Author: dergachev
Date: Fri Dec 14 18:06:13 2018
New Revision: 349227
URL: http://llvm.org/viewvc/llvm-project?rev=349227&view=rev
Log:
[analyzer] ObjCContainers: Track index values.
Use trackExpressionValue() (previously known as trackNullOrUndefValue())
to track index value in the report, so th
Author: dergachev
Date: Fri Dec 14 18:09:02 2018
New Revision: 349228
URL: http://llvm.org/viewvc/llvm-project?rev=349228&view=rev
Log:
[analyzer] ObjCDealloc: Fix a crash when a class attempts to deallocate a class.
The checker wasn't prepared to see the dealloc message sent to the class itself
Author: dergachev
Date: Fri Dec 14 18:13:26 2018
New Revision: 349229
URL: http://llvm.org/viewvc/llvm-project?rev=349229&view=rev
Log:
[analyzer] Fix unknown block calls to have zero parameters.
Right now they report to have one parameter with null decl,
because initializing an ArrayRef of point
Author: dergachev
Date: Fri Dec 14 18:55:55 2018
New Revision: 349233
URL: http://llvm.org/viewvc/llvm-project?rev=349233&view=rev
Log:
Revert "[analyzer] MoveChecker: Add checks for dereferencing a smart pointer..."
This reverts commit r349226.
Fails on an MSVC buildbot.
Modified:
cfe/trun
Author: dergachev
Date: Sun Dec 16 15:44:06 2018
New Revision: 349320
URL: http://llvm.org/viewvc/llvm-project?rev=349320&view=rev
Log:
[analyzer] Fix some expressions staying live too long. Add a debug checker.
StaticAnalyzer uses the CFG-based RelaxedLiveVariables analysis in order to,
in parti
Author: dergachev
Date: Sun Dec 16 21:25:23 2018
New Revision: 349326
URL: http://llvm.org/viewvc/llvm-project?rev=349326&view=rev
Log:
Speculatively re-apply "[analyzer] MoveChecker: Add checks for dereferencing..."
This re-applies commit r349226 that was reverted in r349233 due to failures
on c
Author: dergachev
Date: Sun Dec 16 22:19:32 2018
New Revision: 349327
URL: http://llvm.org/viewvc/llvm-project?rev=349327&view=rev
Log:
[analyzer] MoveChecker: Add an option to suppress warnings on locals.
Re-using a moved-from local variable is most likely a bug because there's
rarely a good mot
Author: dergachev
Date: Sun Dec 16 22:30:39 2018
New Revision: 349328
URL: http://llvm.org/viewvc/llvm-project?rev=349328&view=rev
Log:
[analyzer] MoveChecker: Enable by default as cplusplus.Move.
This checker warns you when you re-use an object after moving it.
Mostly developed by Peter Szecsi!
Author: dergachev
Date: Mon Dec 17 13:07:38 2018
New Revision: 349394
URL: http://llvm.org/viewvc/llvm-project?rev=349394&view=rev
Log:
[analyzer] MoveChecker: Squash the bit field because it causes a GCC warning.
The warning seems spurious (GCC bug 51242), but the bit field is
simply not worth t
Author: dergachev
Date: Wed Dec 19 13:50:46 2018
New Revision: 349682
URL: http://llvm.org/viewvc/llvm-project?rev=349682&view=rev
Log:
[analyzer] CStringChecker: Fix a crash on C++ overloads of standard functions.
It turns out that it's not all that uncommon to have a C++ override of, say,
memcp
Author: dergachev
Date: Wed Dec 19 13:51:59 2018
New Revision: 349683
URL: http://llvm.org/viewvc/llvm-project?rev=349683&view=rev
Log:
[analyzer] CStringChecker: Add the forgotten test file.
Differential Revision: https://reviews.llvm.org/D55873
rdar://problem/45366551
Added:
cfe/trunk/tes
Author: dergachev
Date: Wed Dec 19 15:14:06 2018
New Revision: 349696
URL: http://llvm.org/viewvc/llvm-project?rev=349696&view=rev
Log:
[analyzer] Improve modeling for returning an object from the top frame with RVO.
Static Analyzer processes the program function-by-function, sometimes diving
int
Author: dergachev
Date: Wed Dec 19 15:35:08 2018
New Revision: 349698
URL: http://llvm.org/viewvc/llvm-project?rev=349698&view=rev
Log:
[analyzer] GenericTaint: Fix formatting to prepare for incoming improvements.
Patch by Gábor Borsik!
Differential Revision: https://reviews.llvm.org/D54918
Mod
Author: dergachev
Date: Wed Dec 19 15:48:44 2018
New Revision: 349701
URL: http://llvm.org/viewvc/llvm-project?rev=349701&view=rev
Log:
[analyzer] pr38668: Do not attempt to cast loaded values of non-scalar types.
It is expected to have the same object (memory region) treated as if it has
differe
Author: dergachev
Date: Thu Dec 20 11:36:06 2018
New Revision: 349798
URL: http://llvm.org/viewvc/llvm-project?rev=349798&view=rev
Log:
Revert "[analyzer] pr38668: Do not attempt to cast loaded values..."
This reverts commit r349701.
The patch was incorrect. The whole point of CastRetrievedVal()
Author: dergachev
Date: Thu Dec 20 13:26:40 2018
New Revision: 349824
URL: http://llvm.org/viewvc/llvm-project?rev=349824&view=rev
Log:
[driver] [analyzer] Fix a backward compatibility issue after r348038.
Since r348038 we emit an error every time an -analyzer-config option is not
found. The driv
Author: dergachev
Date: Thu Dec 20 13:45:33 2018
New Revision: 349828
URL: http://llvm.org/viewvc/llvm-project?rev=349828&view=rev
Log:
[driver] [analyzer] Fix buildbots after r349824.
Buildbots can't find the linker, which we don't really need in our tests.
Differential Revision: https://review
Author: dergachev
Date: Thu Dec 20 13:56:49 2018
New Revision: 349835
URL: http://llvm.org/viewvc/llvm-project?rev=349835&view=rev
Log:
[driver] [analyzer] Fix redundant test output.
The -c flag causes a .o file to appear every time we run a test.
Remove it.
Differential Revision: https://review
Author: dergachev
Date: Thu Dec 20 14:29:49 2018
New Revision: 349843
URL: http://llvm.org/viewvc/llvm-project?rev=349843&view=rev
Log:
Revert "[driver] [analyzer] Fix a backward compatibility issue after r348038."
This reverts commits r349824, r349828, r349835.
More buildbot failures were notic
Author: dergachev
Date: Thu Dec 20 16:18:58 2018
New Revision: 349862
URL: http://llvm.org/viewvc/llvm-project?rev=349862&view=rev
Log:
[analyzer] RetainCount: Suppress retain detection heuristic on some CM methods.
If it ends with "Retain" like CFRetain and returns a CFTypeRef like CFRetain,
the
Author: dergachev
Date: Thu Dec 20 17:11:21 2018
New Revision: 349866
URL: http://llvm.org/viewvc/llvm-project?rev=349866&view=rev
Log:
[driver] [analyzer] Fix --analyze -Xanalyzer after r349863.
If an -analyzer-config is passed through -Xanalyzer, it is not found while
looking for -Xclang.
Addi
Author: dergachev
Date: Fri Dec 21 18:06:51 2018
New Revision: 349984
URL: http://llvm.org/viewvc/llvm-project?rev=349984&view=rev
Log:
[analyzer] pr38668: Do not attempt to cast loaded integers to floats.
This patch is a different approach to landing the reverted r349701.
It is expected to have
Author: dergachev
Date: Thu Jan 10 15:44:44 2019
New Revision: 350907
URL: http://llvm.org/viewvc/llvm-project?rev=350907&view=rev
Log:
[analyzer] pr38838, pr39976: Fix crash on diagnosing before implicit destructor.
We need to be able to emit the diagnostic at PreImplicitCall,
and the patch impl
Author: dergachev
Date: Wed Sep 11 13:54:24 2019
New Revision: 371660
URL: http://llvm.org/viewvc/llvm-project?rev=371660&view=rev
Log:
[analyzer] NFC: Move resetDiagnosticLocationToMainFile() to BugReporter.
This method of PathDiagnostic is a part of Static Analyzer's particular
path diagnostic
Author: dergachev
Date: Wed Sep 11 13:54:17 2019
New Revision: 371658
URL: http://llvm.org/viewvc/llvm-project?rev=371658&view=rev
Log:
[analyzer] NFC: Re-implement stack hints as a side map in BugReport.
That's one of the few random entities in the PathDiagnostic interface that
are specific to t
Author: dergachev
Date: Wed Sep 11 13:54:21 2019
New Revision: 371659
URL: http://llvm.org/viewvc/llvm-project?rev=371659&view=rev
Log:
[analyzer] NFC: Move getStmt() and createEndOfPath() out of PathDiagnostic.
These static functions deal with ExplodedNodes which is something we don't want
the P
Author: dergachev
Date: Wed Sep 11 13:54:27 2019
New Revision: 371661
URL: http://llvm.org/viewvc/llvm-project?rev=371661&view=rev
Log:
[analyzer] NFC: Move PathDiagnostic classes to libAnalysis.
At this point the PathDiagnostic, PathDiagnosticLocation, PathDiagnosticPiece
structures no longer re
Author: dergachev
Date: Thu Sep 12 15:11:15 2019
New Revision: 371781
URL: http://llvm.org/viewvc/llvm-project?rev=371781&view=rev
Log:
[analyzer] Fix the 'analyzer-enabled-checkers.c' test on non-linux machines.
'-Xclang -triple' doesn't seem to override the default target triple
as reliably as
Author: dergachev
Date: Wed Sep 25 23:33:21 2019
New Revision: 372942
URL: http://llvm.org/viewvc/llvm-project?rev=372942&view=rev
Log:
[analyzer] Avoid small vectors of non-default-constructibles.
Unconfuses certain compilers.
Modified:
cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensit
Author: dergachev
Date: Thu Sep 26 00:01:31 2019
New Revision: 372945
URL: http://llvm.org/viewvc/llvm-project?rev=372945&view=rev
Log:
[analyzer] A speculative attempt to avoid gcc-7 crashes caused by r372942.
Modified:
cfe/trunk/lib/StaticAnalyzer/Core/Store.cpp
Modified: cfe/trunk/lib/Sta
Author: dergachev
Date: Thu Sep 26 11:52:00 2019
New Revision: 373005
URL: http://llvm.org/viewvc/llvm-project?rev=373005&view=rev
Log:
Revert "[analyzer] A speculative attempt to avoid gcc-7 crashes..."
This reverts commit r372940 which was an overreaction to a flaky buildbot.
Modified:
cfe
201 - 300 of 1254 matches
Mail list logo