The input file is a .txt file. The input follows the following grammar given in src/parse.y.
Sample input:
P1 {
t01: acquire(z)
t02: x := 1
t03: release(z)
}
P2 {
t11: acquire(z)
t12: x := 2
t13: release(z)
}
PROGRAM_ORDER: {(t01, t02), (t02, t03), (t01, t03), (t11, t12), (t12, t13), (t11, t13)}
- Calling
makewill compile all the files and generate an executabledpor - To generate the output
.dotfile:./dpor <input.txt> <output.dot>. This will generate the.dotfile containing the execution tree and print the statistics - Run
make testto run all the testcases in theinputfolder. This will also generate the final pdf in theoutputfolder