internal support for script optimization options for keeping asserts, not

consolidating event handlers
This commit is contained in:
Vern Paxson 2024-12-03 10:35:35 -07:00
parent 8b1790019a
commit a328185a8f
2 changed files with 8 additions and 0 deletions

View file

@ -265,11 +265,13 @@ static void init_options() {
check_env_opt("ZEEK_DUMP_UDS", analysis_options.dump_uds);
check_env_opt("ZEEK_INLINE", analysis_options.inliner);
check_env_opt("ZEEK_NO_INLINE", analysis_options.no_inliner);
check_env_opt("ZEEK_NO_EH_COALESCENCE", analysis_options.no_eh_coalescence);
check_env_opt("ZEEK_OPT", analysis_options.optimize_AST);
check_env_opt("ZEEK_XFORM", analysis_options.activate);
check_env_opt("ZEEK_ZAM", analysis_options.gen_ZAM);
check_env_opt("ZEEK_COMPILE_ALL", analysis_options.compile_all);
check_env_opt("ZEEK_REPORT_UNCOMPILABLE", analysis_options.report_uncompilable);
check_env_opt("ZEEK_ZAM_KEEP_ASSERTS", analysis_options.keep_asserts);
check_env_opt("ZEEK_ZAM_CODE", analysis_options.gen_ZAM_code);
check_env_opt("ZEEK_NO_ZAM_OPT", analysis_options.no_ZAM_opt);
check_env_opt("ZEEK_NO_ZAM_CONTROL_FLOW_OPT", analysis_options.no_ZAM_control_flow_opt);

View file

@ -57,6 +57,12 @@ struct AnalyOpt {
// enabled due to other options.
bool no_inliner = false;
// If true, when inlining skip event handler coalescence.
bool no_eh_coalescence = false;
// Whether to keep or elide "assert" statements.
bool keep_asserts = false;
// If true, report which functions are directly and indirectly
// recursive, and exit. Only germane if running the inliner.
bool report_recursive = false;