summaryrefslogtreecommitdiffstats
path: root/clang/test/Analysis/exploded-graph-rewriter/program_points.dot
Commit message (Collapse)AuthorAgeFilesLines
* [analyzer] exploded-graph-rewriter: Fix dump for state 0.Artem Dergachev2019-10-181-4/+4
| | | | | | It shouldn't say "unspecified" when the state is specified to be empty. llvm-svn: 375279
* [analyzer] Assign truly stable identifiers to exploded nodes.Artem Dergachev2019-10-171-14/+28
| | | | | | | | | | | ExplodedGraph nodes will now have a numeric identifier stored in them which will keep track of the order in which the nodes were created and it will be fully deterministic both accross runs and across machines. This is extremely useful for debugging as it allows reliably setting conditional breakpoints by node IDs. llvm-svn: 375186
* [analyzer] Display cast kinds in program point dumps.Artem Dergachev2019-10-171-0/+48
| | | | | | | Because cast expressions have their own hierarchy, it's extremely useful to have some information about what kind of casts are we dealing with. llvm-svn: 375185
* [analyzer] exploded-graph-rewriter: Improve source location dumps.Artem Dergachev2019-07-121-4/+5
| | | | | | | | - Correctly display macro expansion and spelling locations. - Use the same procedure to display location context call site locations. - Display statement IDs for program points. llvm-svn: 365861
* [analyzer] exploded-graph-rewriter: Fix filenames in program point.Artem Dergachev2019-07-111-1/+2
| | | | | | Fix a typo in JSON field name. llvm-svn: 365827
* [analyzer] exploded-graph-rewriter: Implement bug nodes and sink nodes.Artem Dergachev2019-07-031-3/+3
| | | | | | | | | | | Add a label to nodes that have a bug report attached or on which the analysis was generally interrupted. Fix printing has_report and implement printing is_sink in the graph dumper. Differential Revision: https://reviews.llvm.org/D64110 llvm-svn: 364992
* [analyzer] exploded-graph-rewriter: Collapse very long statement pretty-prints.Artem Dergachev2019-07-031-0/+24
| | | | | | | | | | When printing various statements that include braces (compound statements, lambda expressions, statement-expressions, etc.), replace the code between braces with '...'. Differential Revision: https://reviews.llvm.org/D64104 llvm-svn: 364990
* [analyzer] exploded-graph-rewriter: Improve program point dumps.Artem Dergachev2019-07-021-5/+27
| | | | | | | | | | | | - Take advantage of the stmt_point_kind. - Dump block IDs for BlockEntrance nodes. - Don't dump huge compound statements on PurgeDeadSymbols nodes. - Rename Edge to BlockEdge for consistency. - Tweak colors. Differential Revision: https://reviews.llvm.org/D64051 llvm-svn: 364881
* [analyzer] exploded-graph-rewriter: Implement program point tags.Artem Dergachev2019-07-011-1/+9
| | | | | | | | Keep them on a separate line for more visibility. Differential Revision: https://reviews.llvm.org/D63965 llvm-svn: 364864
* [analyzer] exploded-graph-rewriter: Implement a --diff mode.Artem Dergachev2019-06-191-1/+0
| | | | | | | | | | | | | | | | | | | | | In this mode the tool would avoid duplicating the contents of the program state on every node, replacing them with a diff-like dump of changes that happened on that node. This is useful because most of the time we only interested in whether the effect of the statement was modeled correctly. A diffed graph would also be much faster to load and navigate, being much smaller than the original graph. The diffs are computed "semantically" as opposed to plain text diffs. I.e., the diff algorithm is hand-crafted separately for every state trait, taking the underlying data structures into account. This is especially nice for Environment because textual diffs would have been terrible. On the other hand, it requires some boilerplate to implement. Differential Revision: https://reviews.llvm.org/D62761 llvm-svn: 363898
* Revert "[analyzer] exploded-graph-rewriter: An attempt to fix Windows ↵Artem Dergachev2019-06-031-0/+3
| | | | | | | | | | buildbots." This reverts commit r362343. Instead, disable tests on Windows for now. llvm-svn: 362347
* [analyzer] exploded-graph-rewriter: Initial commit.Artem Dergachev2019-06-021-0/+60
This is a utility to improve readability and generally manipulate GraphViz dumps of the analysis graph. Such dumps are often huge and not only hard to read, but also often hang the viewer apps with their mere size. Such script should significantly improve debugging experience. Differential Revision: https://reviews.llvm.org/D62638 llvm-svn: 362340
OpenPOWER on IntegriCloud