cprover
|
#include <goto_instrument_parse_options.h>
Public Member Functions | |
virtual int | doit () |
invoke main modules More... | |
virtual void | help () |
display command line help More... | |
goto_instrument_parse_optionst (int argc, const char **argv) | |
![]() | |
parse_options_baset (const std::string &optstring, int argc, const char **argv) | |
virtual void | usage_error () |
virtual int | main () |
virtual | ~parse_options_baset () |
![]() | |
language_uit (const cmdlinet &cmdline, ui_message_handlert &ui_message_handler) | |
Constructor. More... | |
virtual | ~language_uit () |
Destructor. More... | |
virtual bool | parse () |
virtual bool | parse (const std::string &filename) |
virtual bool | typecheck () |
virtual bool | final () |
virtual void | clear_parse () |
virtual void | show_symbol_table (bool brief=false) |
virtual void | show_symbol_table_plain (std::ostream &out, bool brief) |
virtual void | show_symbol_table_xml_ui (bool brief) |
uit | get_ui () |
Protected Member Functions | |
virtual void | register_languages () |
void | get_goto_program () |
void | instrument_goto_program () |
void | eval_verbosity () |
void | do_indirect_call_and_rtti_removal (bool force=false) |
void | do_remove_const_function_pointers_only () |
Remove function pointers that can be resolved by analysing const variables (i.e. More... | |
void | do_partial_inlining () |
void | do_remove_returns () |
Protected Attributes | |
ui_message_handlert | ui_message_handler |
bool | function_pointer_removal_done |
bool | partial_inlining_done |
bool | remove_returns_done |
goto_functionst | goto_functions |
![]() | |
const cmdlinet & | _cmdline |
ui_message_handlert & | ui_message_handler |
Additional Inherited Members | |
![]() | |
typedef ui_message_handlert::uit | uit |
![]() | |
cmdlinet | cmdline |
![]() | |
language_filest | language_files |
symbol_tablet | symbol_table |
Definition at line 82 of file goto_instrument_parse_options.h.
|
inline |
Definition at line 90 of file goto_instrument_parse_options.h.
|
protected |
Definition at line 792 of file goto_instrument_parse_options.cpp.
References parse_options_baset::cmdline, messaget::eom(), function_pointer_removal_done, messaget::get_message_handler(), goto_functions, cmdlinet::isset(), remove_exceptions(), remove_function_pointers(), remove_instanceof(), remove_virtual_functions(), messaget::status(), and language_uit::symbol_table.
Referenced by doit(), and instrument_goto_program().
|
protected |
Definition at line 835 of file goto_instrument_parse_options.cpp.
References parse_options_baset::cmdline, messaget::eom(), goto_functions, goto_partial_inline(), cmdlinet::isset(), partial_inlining_done, messaget::status(), language_uit::symbol_table, and ui_message_handler.
Referenced by doit(), and instrument_goto_program().
|
protected |
Remove function pointers that can be resolved by analysing const variables (i.e.
can be resolved using remove_const_function_pointers). Function pointers that cannot be resolved will be left as function pointers.
Definition at line 817 of file goto_instrument_parse_options.cpp.
References parse_options_baset::cmdline, messaget::eom(), function_pointer_removal_done, messaget::get_message_handler(), goto_functions, cmdlinet::isset(), remove_function_pointers(), messaget::status(), and language_uit::symbol_table.
Referenced by instrument_goto_program().
|
protected |
Definition at line 850 of file goto_instrument_parse_options.cpp.
References messaget::eom(), goto_functions, remove_returns(), remove_returns_done, messaget::status(), and language_uit::symbol_table.
Referenced by doit(), and instrument_goto_program().
|
virtual |
invoke main modules
Implements parse_options_baset.
Definition at line 114 of file goto_instrument_parse_options.cpp.
References accelerate_functions(), cmdlinet::args, goto_unwindt::ASSERT, goto_unwindt::ASSUME, CBMC_VERSION, custom_bitvector_analysist::check(), check_call_sequence(), parse_options_baset::cmdline, goto_functions_templatet< bodyT >::compute_loop_numbers(), goto_unwindt::CONTINUE, count_eloc(), do_indirect_call_and_rtti_removal(), do_partial_inlining(), do_remove_returns(), document_properties_html(), document_properties_latex(), dot(), dump_c(), dump_cpp(), messaget::eom(), messaget::error(), eval_verbosity(), forall_goto_functions, forall_goto_program_instructions, goto_functions_templatet< bodyT >::function_map, get_goto_program(), messaget::get_message_handler(), language_uit::get_ui(), cmdlinet::get_value(), goto_functions, goto_inline(), help(), horn_encoding(), instrument_goto_program(), interpreter(), interval_analysis(), cmdlinet::isset(), list_calls_and_arguments(), list_eloc(), list_undefined_functions(), namespacet::lookup(), parse_options_baset::main(), mutex_init_instrumentation(), symbolt::name, call_grapht::output(), local_bitvector_analysist::output(), points_tot::output(), ai_baset::output(), call_grapht::output_dot(), grapht< N >::output_dot(), goto_programt::output_instruction(), goto_unwindt::output_log_json(), call_grapht::output_xml(), parameter_assignments(), parse_unwindset(), goto_unwindt::PARTIAL, print_path_lengths(), print_struct_alignment_problems(), register_languages(), remove_skip(), remove_unused_functions(), restore_returns(), messaget::result(), show_call_sequences(), show_goto_functions(), show_locations(), show_loop_ids(), show_natural_loops(), show_properties(), language_uit::show_symbol_table(), show_uninitialized(), show_value_sets(), messaget::status(), language_uit::symbol_table, thread_exit_instrumentation(), symbolt::type, ui_message_handler, undefined_function_abort_path(), goto_functions_templatet< bodyT >::update(), widen(), and write_goto_binary().
|
protected |
Definition at line 99 of file goto_instrument_parse_options.cpp.
References parse_options_baset::cmdline, cmdlinet::get_value(), cmdlinet::isset(), message_handlert::set_verbosity(), ui_message_handler, and unsafe_string2unsigned().
Referenced by doit().
|
protected |
Definition at line 861 of file goto_instrument_parse_options.cpp.
References cmdlinet::args, parse_options_baset::cmdline, config, messaget::eom(), messaget::get_message_handler(), goto_functions, read_goto_binary(), configt::set(), configt::set_from_symbol_table(), messaget::status(), and language_uit::symbol_table.
Referenced by doit().
|
virtual |
display command line help
Reimplemented from parse_options_baset.
Definition at line 1442 of file goto_instrument_parse_options.cpp.
References CBMC_VERSION, HELP_GOTO_CHECK, HELP_REMOVE_CONST_FUNCTION_POINTERS, and HELP_SHOW_GOTO_FUNCTIONS.
Referenced by doit().
|
protected |
Definition at line 873 of file goto_instrument_parse_options.cpp.
References add_failed_symbols(), add_uninitialized_locals_assertions(), all, all_loops, configt::ansi_c, arrays_only, branch(), parse_options_baset::cmdline, code_contracts(), goto_functions_templatet< bodyT >::compute_loop_numbers(), concurrency(), config, configt::ansi_ct::defines, do_indirect_call_and_rtti_removal(), do_partial_inlining(), do_remove_const_function_pointers_only(), do_remove_returns(), messaget::eom(), messaget::error(), full_slicer(), function_enter(), function_exit(), messaget::get_message_handler(), cmdlinet::get_value(), cmdlinet::get_values(), goto_check(), goto_function_inline(), goto_function_inline_and_log(), goto_functions, goto_inline(), goto_partial_inline(), havoc_loops(), escape_analysist::instrument(), interrupt(), interval_analysis(), cmdlinet::isset(), k_induction(), label_properties(), link_to_library(), min_interference, mmio(), model_argc_argv(), mutex_init_instrumentation(), my_events, no_loop, nondet_static(), nondet_volatile(), one_event_per_cycle, parameter_assignments(), PARSE_OPTIONS_GOTO_CHECK, Power, property_slicer(), PSO, race_check(), reachability_slicer(), read_first, remove_asm(), remove_functions(), remove_pointers(), remove_returns(), remove_skip(), messaget::result(), RMO, safe_string2unsigned(), optionst::set_option(), skip_loops(), slice_global_inits(), stack_depth(), messaget::status(), string_abstraction(), language_uit::symbol_table, thread_exit_instrumentation(), TSO, ui_message_handler, Unknown, unsafe_string2unsigned(), goto_functions_templatet< bodyT >::update(), weak_memory(), widen(), and write_first.
Referenced by doit().
|
protectedvirtual |
Definition at line 20 of file goto_instrument_languages.cpp.
References new_ansi_c_language(), new_cpp_language(), new_java_bytecode_language(), and register_language().
Referenced by doit().
|
protected |
Definition at line 114 of file goto_instrument_parse_options.h.
Referenced by do_indirect_call_and_rtti_removal(), and do_remove_const_function_pointers_only().
|
protected |
Definition at line 118 of file goto_instrument_parse_options.h.
Referenced by do_indirect_call_and_rtti_removal(), do_partial_inlining(), do_remove_const_function_pointers_only(), do_remove_returns(), doit(), get_goto_program(), and instrument_goto_program().
|
protected |
Definition at line 115 of file goto_instrument_parse_options.h.
Referenced by do_partial_inlining().
|
protected |
Definition at line 116 of file goto_instrument_parse_options.h.
Referenced by do_remove_returns().
|
protected |
Definition at line 101 of file goto_instrument_parse_options.h.
Referenced by do_partial_inlining(), doit(), eval_verbosity(), and instrument_goto_program().