
* fix incorrect assert condition and document it * update symcc * adapt to changes in symcc API * more fixes * fix formatting * more fixes * speed up smoke test by building multiple crates in one command * update symcc commit to latest main
This folder contains all the code necessary to run a smoke test of the whole concolic tracing setup. This is achieved by
- Compiling SymCC. Dependencies are installed via
smoke_test_ubuntu_deps.sh
. - Compiling a custom runtime with tracing capability (
runtime_test
). - Compiling a test program using SymCC that instruments using the custom runtime.
- Capturing an execution trace of the instrumented target using
dump_constraints
and a fixed input (if_test_input
). - Snapshot-testing the captured trace against our expectation (
expected_constraints.txt
).
This whole process is orchestrated by smoke_test.sh
.