Skip to content

Commit 58552db

Browse files
committed
docs: Add description of some debug options.
1 parent 53d82fe commit 58552db

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

docs/GettingStarted/debug.md

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
## Debugging
2+
3+
VAST makes use of the MLIR infrastructure to facilitate the reproduction of crashes within the pipeline. You can refer to the MLIR documentation on [crash and failure reproduction](https://mlir.llvm.org/docs/PassManagement/#crash-and-failure-reproduction) for more details. We provide a similar set of options in vast-front to aid in debugging.
4+
5+
### Generating Crash Reproducers
6+
7+
To generate a minimal reproducer for a crashed pipeline of `vast-front`, use the following option:
8+
9+
```
10+
-vast-emit-crash-reproducer="reproducer.mlir"
11+
```
12+
13+
This option disables multithreading to ensure a comprehensive crash report. You can then load and examine the crash report using the following command:
14+
15+
```
16+
vast-opt -run-reproducer reproducer.mlir
17+
```
18+
19+
### Pipeline Information
20+
21+
To obtain a detailed insight into the pipeline, you can use the following option of `vast-front`:
22+
23+
```
24+
-vast-print-pipeline
25+
```
26+
27+
This option dumps the pipeline string to the standard error stream. You can use this information for a more specific investigation of the pipeline. Execute the pipeline with the printed string using the following command:
28+
29+
```
30+
vast-opt --pass-pipeline="pipeline-string"
31+
```
32+
33+
### Debug Pipeline
34+
35+
With the `-vast-debug` option, you get more detailed crash reports. It shows MLIR operations when there's an error and provides current stack traces.

0 commit comments

Comments
 (0)