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
|
/// Checks if the added constraints are satisfiable
|
||||||
virtual clang::ento::ConditionTruthVal isModelFeasible() = 0;
|
virtual clang::ento::ConditionTruthVal isModelFeasible() = 0;
|
||||||
|
|
||||||
|
/// Dumps SMT formula
|
||||||
|
LLVM_DUMP_METHOD virtual void dump() const = 0;
|
||||||
}; // end class SMTConstraintManager
|
}; // end class SMTConstraintManager
|
||||||
|
|
||||||
} // namespace ento
|
} // namespace ento
|
||||||
|
|
|
@ -911,6 +911,8 @@ public:
|
||||||
|
|
||||||
ConditionTruthVal isModelFeasible() override;
|
ConditionTruthVal isModelFeasible() override;
|
||||||
|
|
||||||
|
LLVM_DUMP_METHOD void dump() const override;
|
||||||
|
|
||||||
//===------------------------------------------------------------------===//
|
//===------------------------------------------------------------------===//
|
||||||
// Implementation for interface from ConstraintManager.
|
// Implementation for interface from ConstraintManager.
|
||||||
//===------------------------------------------------------------------===//
|
//===------------------------------------------------------------------===//
|
||||||
|
@ -1299,6 +1301,11 @@ clang::ento::ConditionTruthVal Z3ConstraintManager::isModelFeasible() {
|
||||||
return ConditionTruthVal();
|
return ConditionTruthVal();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
LLVM_DUMP_METHOD void Z3ConstraintManager::dump() const
|
||||||
|
{
|
||||||
|
Solver.dump();
|
||||||
|
}
|
||||||
|
|
||||||
//===------------------------------------------------------------------===//
|
//===------------------------------------------------------------------===//
|
||||||
// Internal implementation.
|
// Internal implementation.
|
||||||
//===------------------------------------------------------------------===//
|
//===------------------------------------------------------------------===//
|
||||||
|
|
Loading…
Reference in New Issue