cprover
|
#include "static_simplifier.h"
#include <util/message.h>
#include <util/options.h>
#include <goto-programs/goto_model.h>
#include <goto-programs/remove_returns.h>
#include <goto-programs/remove_skip.h>
#include <goto-programs/remove_unreachable.h>
#include <goto-programs/write_goto_binary.h>
#include <analyses/ai.h>
Go to the source code of this file.
Functions | |
bool | static_simplifier (goto_modelt &goto_model, const ai_baset &ai, const optionst &options, message_handlert &message_handler, std::ostream &out) |
Simplifies the program using the information in the abstract domain. More... | |
bool static_simplifier | ( | goto_modelt & | goto_model, |
const ai_baset & | ai, | ||
const optionst & | options, | ||
message_handlert & | message_handler, | ||
std::ostream & | out | ||
) |
Simplifies the program using the information in the abstract domain.
goto_model | the program analyzed |
ai | the abstract interpreter after it has been run to fix point |
options | the parsed user options |
message_handler | the system message handler |
out | output stream for the simplified program |
Definition at line 29 of file static_simplifier.cpp.
References ai_baset::abstract_state_before(), ai_domain_baset::ai_simplify(), ai_domain_baset::ai_simplify_lhs(), code_function_callt::arguments(), messaget::eom(), Forall_goto_functions, Forall_goto_program_instructions, code_function_callt::function(), optionst::get_bool_option(), namespacet::get_symbol_table(), goto_modelt::goto_functions, code_assignt::lhs(), message_handler, messaget::progress(), remove_skip(), remove_unreachable(), restore_returns(), code_assignt::rhs(), messaget::status(), goto_modelt::symbol_table, to_code_assign(), to_code_function_call(), goto_functionst::update(), and write_goto_binary().
Referenced by janalyzer_parse_optionst::perform_analysis(), and goto_analyzer_parse_optionst::perform_analysis().