You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/options.md
+4-4
Original file line number
Diff line number
Diff line change
@@ -171,10 +171,10 @@ There are several options to modify how KLEE outputs statistics:
171
171
*`--write-exec-tree` - Write execution tree into `exec_tree.db` (*default=false*)
172
172
173
173
Since symbolic execution aims to execute all feasible paths of a program, it creates an exploration tree instead of a single execution path.
174
-
KLEE maintains this tree in memory when either a searcher (e.g. `random-path`) depends on it or the user explicitly requests a copy on disk (`-write-ptree`).
175
-
To decrease the overhead of constant disk writes in the latter case, KLEE batches a number of nodes until it eventually writes them into an SQLite database (`ptree.db`).
176
-
The batching interval can be modified with `--ptree-batch-size`.
177
-
Afterwards, [klee-ptree]({{site.baseurl}}/docs/tools/#klee-ptree) can be used to convert the tree into an `.svg` file or to print some useful statistics.
174
+
KLEE maintains this tree in memory when either a searcher (e.g. `random-path`) depends on it or the user explicitly requests a copy on disk (`-write-exec-tree`).
175
+
To decrease the overhead of constant disk writes in the latter case, KLEE batches a number of nodes until it eventually writes them into an SQLite database (`exec_tree.db`).
176
+
The batching interval can be modified with `--exec-tree-batch-size`.
177
+
Afterwards, [klee-exec-tree]({{site.baseurl}}/docs/tools/#klee-exec-tree) can be used to convert the tree into an `.svg` file or to print some useful statistics.
178
178
179
179
Sometimes the traversal of deep execution trees with the `random-path` searcher can become quite costly.
180
180
`--compress-exec-tree` can help in this case by reducing paths of long chains of unary edges to a single edge:
Copy file name to clipboardExpand all lines: docs/tools.md
+6-6
Original file line number
Diff line number
Diff line change
@@ -240,9 +240,9 @@ KLEE can subsequently be run with the `-seed-dir` option to seed further explora
240
240
241
241
Similar to `ktest-gen`, except that it generates random data for the `.ktest` file.
242
242
243
-
## klee-ptree
243
+
## klee-exec-tree
244
244
245
-
When KLEE was used with `--write-ptree`, `klee-ptree` can be used to show various statistics of the execution tree, e.g. branch information and information about the termination types of paths:
245
+
When KLEE was used with `--write-exec-tree`, `klee-exec-tree` can be used to show various statistics of the execution tree, e.g. branch information and information about the termination types of paths:
246
246
247
247
*`branches` - print branch statistics in `.csv` format
248
248
*`depths` - print depths statistics in `.csv` format
@@ -254,7 +254,7 @@ When KLEE was used with `--write-ptree`, `klee-ptree` can be used to show variou
254
254
Example usage:
255
255
256
256
```
257
-
$ klee-ptree branches klee-out-1
257
+
$ klee-exec-tree branches klee-out-1
258
258
branch type,count
259
259
Alloc,0
260
260
Br,55055
@@ -268,7 +268,7 @@ Switch,27091
268
268
IndirectBr,0
269
269
...
270
270
271
-
$ klee-ptree terminations klee-out-1
271
+
$ klee-exec-tree terminations klee-out-1
272
272
termination type,count
273
273
Exit,2230
274
274
Interrupted,48352
@@ -282,7 +282,7 @@ It also can be used to dump the tree in [Graphviz](https://graphviz.org/)' `.dot
282
282
We recommend `.svg` as it shows tooltips with e.g. state id, asm line, branch type.
0 commit comments