forked from OSchip/llvm-project
[analyzer] Add method to the generic SMT API to dump the SMT formula
Summary: New method dump the SMT formula and the Z3 implementation. There is no test because I only used it for debugging. However, if requested, I can add an option to the static analyzer to dump the formula (whole program? per path?), maybe something like the trimmed graph but for SMT formulas. Reviewers: NoQ, george.karpenkov, ddcc Reviewed By: george.karpenkov Subscribers: xazax.hun, szepet, a.sidorin Differential Revision: https://reviews.llvm.org/D48221 llvm-svn: 334891
This commit is contained in:
parent
1193bbf6b7
commit
e7f703804d
|
@ -35,6 +35,8 @@ public:
|
|||
/// Checks if the added constraints are satisfiable
|
||||
virtual clang::ento::ConditionTruthVal isModelFeasible() = 0;
|
||||
|
||||
/// Dumps SMT formula
|
||||
LLVM_DUMP_METHOD virtual void dump() const = 0;
|
||||
}; // end class SMTConstraintManager
|
||||
|
||||
} // namespace ento
|
||||
|
|
|
@ -911,6 +911,8 @@ public:
|
|||
|
||||
ConditionTruthVal isModelFeasible() override;
|
||||
|
||||
LLVM_DUMP_METHOD void dump() const override;
|
||||
|
||||
//===------------------------------------------------------------------===//
|
||||
// Implementation for interface from ConstraintManager.
|
||||
//===------------------------------------------------------------------===//
|
||||
|
@ -1299,6 +1301,11 @@ clang::ento::ConditionTruthVal Z3ConstraintManager::isModelFeasible() {
|
|||
return ConditionTruthVal();
|
||||
}
|
||||
|
||||
LLVM_DUMP_METHOD void Z3ConstraintManager::dump() const
|
||||
{
|
||||
Solver.dump();
|
||||
}
|
||||
|
||||
//===------------------------------------------------------------------===//
|
||||
// Internal implementation.
|
||||
//===------------------------------------------------------------------===//
|
||||
|
|
Loading…
Reference in New Issue