/* cc_opt = */ TRUE,
/* freestanding; = */ FALSE,
/* fp_model = */ fp_model_precise,
- /* vrfy = */ FIRM_VERIFICATION_ON,
+ /* verify = */ FIRM_VERIFICATION_ON,
/* check_all = */ FALSE,
/* lower = */ TRUE,
/* os_support = */ DEFAULT_OS,
/* clone_threshold = */ DEFAULT_CLONE_THRESHOLD,
/* inline_maxsize = */ 750,
/* inline_threshold= */ 0,
- /* vrfy_edges = */ FALSE,
+ /* verify_edges = */ FALSE,
/* grs_simd_opt = */ 0,
/* grs_create_pattern = */ 0,
/* spare_size = */ 128,
/* extbb = */ FALSE,
/* ir_graph = */ FALSE,
/* all_phases = */ FALSE,
- /* edge_labels = */ FALSE,
/* statistic = */ STAT_NONE,
/* stat_pattern = */ 0,
/* stat_dag = */ 0,
- /* gen_firm_asm = */ FALSE,
/* filter = */ NULL
};
{ X("restrict"), &firm_opt.honor_restrict, 1, "firm: honor restrict keyword" },
{ X("no-restrict"), &firm_opt.honor_restrict, 1, "firm: restrict keyword is meaningless" },
{ X("no-lower"), &firm_opt.lower, 0, "firm: disable lowering" },
- { X("vrfy-off"), &firm_opt.vrfy, FIRM_VERIFICATION_OFF, "firm: disable node verification" },
- { X("vrfy-on"), &firm_opt.vrfy, FIRM_VERIFICATION_ON, "firm: enable node verification" },
- { X("vrfy-report"), &firm_opt.vrfy, FIRM_VERIFICATION_REPORT, "firm: node verification, report only" },
+ { X("verify-off"), &firm_opt.verify, FIRM_VERIFICATION_OFF, "firm: disable node verification" },
+ { X("verify-on"), &firm_opt.verify, FIRM_VERIFICATION_ON, "firm: enable node verification" },
+ { X("verify-report"), &firm_opt.verify, FIRM_VERIFICATION_REPORT, "firm: node verification, report only" },
{ X("check-all"), &firm_opt.check_all, 1, "firm: enable checking all Firm phases" },
{ X("no-check-all"), &firm_opt.check_all, 0, "firm: disable checking all Firm phases" },
- { X("vrfy-edges-on"), &firm_opt.vrfy_edges, 1, "firm: enable out edge verification" },
- { X("vrfy-edges-off"), &firm_opt.vrfy_edges, 0, "firm: disable out edge verification" },
+ { X("verify-edges-on"), &firm_opt.verify_edges, 1, "firm: enable out edge verification" },
+ { X("verify-edges-off"), &firm_opt.verify_edges, 0, "firm: disable out edge verification" },
/* dumping */
#if defined(_DEBUG) || defined(FIRM_DEBUG)
{ X("dump-no-blocks"), &firm_dump.no_blocks, 1, "firm: dump non-blocked graph" },
{ X("dump-extbb"), &firm_dump.extbb, 1, "firm: dump extended basic blocks" },
{ X("dump-all-phases"), &firm_dump.all_phases, 1, "firm: dump graphs for all optimization phases" },
- { X("dump-edge-labels"), &firm_dump.edge_labels, 1, "firm: dump edge labels" },
/* code generation */
{ X("no-codegen"), &firm_be_opt.selection, BE_NONE, "cg: disable code generator" },
{ X("no-grs-create-pattern"), &firm_ext_grs.create_pattern, 0, "firm: create patterns for simd optimization" },
#endif
-#ifdef FIRM_BACKEND
{ X("be-firm"), &firm_be_opt.selection, BE_FIRM_BE, "backend: firm backend facility" },
-#endif /* FIRM_BACKEND */
#ifdef FIRM2C_BACKEND
{ X("be-firm2c"), &firm_be_opt.selection, BE_FIRM2C, "backend: firm2C" },
#endif /* FIRM2C_BACKEND */
{ X("stat-final"), &firm_dump.statistic, STAT_FINAL, "misc: Firm statistic after code generation" },
{ X("stat-pattern"), &firm_dump.stat_pattern, 1, "misc: Firm statistic calculates most used pattern" },
{ X("stat-dag"), &firm_dump.stat_dag, 1, "misc: Firm calculates DAG statistics" },
- { X("firm-asm"), &firm_dump.gen_firm_asm, 1, "misc: output Firm assembler" },
{ X("win32"), &firm_opt.os_support, OS_SUPPORT_MINGW, "misc: generate MinGW Win32 code" },
{ X("mac"), &firm_opt.os_support, OS_SUPPORT_MACHO, "misc: generate MacOS code" },
{ X("linux"), &firm_opt.os_support, OS_SUPPORT_LINUX, "misc: generate Linux-ELF code" },
firm_opt.no_alias = FALSE;
firm_opt.cc_opt = FALSE;
firm_opt.freestanding = TRUE;
+ disable_all_opts();
} /* disable_opts */
void print_option_help(const char *name, const char *description)
if (firm_opt.debug_mode == DBG_MODE_FULL)
disable_opts();
res = 1;
- res &= firm_be_option("omitfp=0");
- res &= firm_be_option("stabs");
+ res &= be_parse_arg("omitfp=0");
+ res &= be_parse_arg("stabs");
return res;
}
break;
return 0;
} /* firm_option */
-/**
- * Handles a firm backend option.
- *
- * The options are here only checked for validity and later transmitted
- * to the firm backend (in the hope they do not fail ...)
- */
-int firm_be_option(const char *opt) {
-#ifdef FIRM_BACKEND
- return be_parse_arg(opt);
-#else
- return 0;
-#endif /* FIRM_BACKEND */
-} /* firm_be_option */
-
/**
* prints the firm version number
*/