mirror of
https://github.com/Z3Prover/z3
synced 2025-07-19 19:02:02 +00:00
adding validation code to doc/udoc
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
54506408f9
commit
1111c0494f
13 changed files with 328 additions and 104 deletions
|
@ -156,6 +156,14 @@ namespace datalog {
|
|||
process_costs();
|
||||
}
|
||||
|
||||
void instruction::collect_statistics(statistics& st) const {
|
||||
costs c;
|
||||
get_total_cost(c);
|
||||
st.update("instruction", c.instructions);
|
||||
st.update("instruction-time", c.milliseconds);
|
||||
}
|
||||
|
||||
|
||||
void instruction::display_indented(rel_context_base const & _ctx, std::ostream & out, std::string indentation) const {
|
||||
out << indentation;
|
||||
rel_context const& ctx = dynamic_cast<const rel_context&>(_ctx);
|
||||
|
@ -257,7 +265,7 @@ namespace datalog {
|
|||
instr_clone_move(bool clone, reg_idx src, reg_idx tgt)
|
||||
: m_clone(clone), m_src(src), m_tgt(tgt) {}
|
||||
virtual bool perform(execution_context & ctx) {
|
||||
log_verbose(ctx);
|
||||
if (ctx.reg(m_src)) log_verbose(ctx);
|
||||
ctx.make_empty(m_tgt);
|
||||
if (m_clone) {
|
||||
ctx.set_reg(m_tgt, ctx.reg(m_src) ? ctx.reg(m_src)->clone() : 0);
|
||||
|
@ -1145,6 +1153,15 @@ namespace datalog {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
void instruction_block::collect_statistics(statistics& st) const {
|
||||
instr_seq_type::const_iterator it = m_data.begin();
|
||||
instr_seq_type::const_iterator end = m_data.end();
|
||||
for(; it!=end; ++it) {
|
||||
(*it)->collect_statistics(st);
|
||||
}
|
||||
}
|
||||
|
||||
void instruction_block::make_annotations(execution_context & ctx) {
|
||||
instr_seq_type::iterator it = m_data.begin();
|
||||
instr_seq_type::iterator end = m_data.end();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue