ftsrg / gazer

An LLVM-based formal verification frontend for C programs.
24 stars 5 forks source link

Support SV-COMP ReachSafety-Sequentialized with BMC #82

Open hajduakos opened 3 years ago

sallaigy commented 3 years ago

I checked a few programs in this category, I do not see major blockers, but for a few programs there is one major pain point: they contain irreducible control flow (i.e. goto jumps into the middle of loops), which the BMC algorithm and our recursive CFAs cannot handle. There are some transformations that sometimes can transform irreducible control flow to reducible, but they are very costly and completely unnecessary for normal programs (see #4 ).