inherit default values when checking scratchpad for arguments

This commit is contained in:
N. Engelhardt 2020-01-06 10:46:10 +01:00
parent b2ad781b07
commit b376548fb9
1 changed files with 10 additions and 27 deletions

View File

@ -954,39 +954,22 @@ struct Abc9Pass : public Pass {
// get arguments from scratchpad first, then override by command arguments // get arguments from scratchpad first, then override by command arguments
std::string lut_arg, luts_arg; std::string lut_arg, luts_arg;
if (design->scratchpad.count("abc9.script")) { exe_file = design->scratchpad_get_string("abc9.exe", exe_file /* inherit default value if not set */);
script_file = design->scratchpad_get_string("abc9.script"); script_file = design->scratchpad_get_string("abc9.script", script_file);
}
if (design->scratchpad.count("abc9.D")) { if (design->scratchpad.count("abc9.D")) {
delay_target = "-D " + design->scratchpad_get_string("abc9.D"); delay_target = "-D " + design->scratchpad_get_string("abc9.D");
} }
if (design->scratchpad.count("abc9.lut")) { lut_arg = design->scratchpad_get_string("abc9.lut", lut_arg);
lut_arg = design->scratchpad_get_string("abc9.lut"); luts_arg = design->scratchpad_get_string("abc9.luts", luts_arg);
} fast_mode = design->scratchpad_get_bool("abc9.fast", fast_mode);
if (design->scratchpad.count("abc9.luts")) { cleanup = !design->scratchpad_get_bool("abc9.nocleanup", !cleanup);
luts_arg = design->scratchpad_get_string("abc9.luts"); show_tempdir = design->scratchpad_get_bool("abc9.showtmp", show_tempdir);
} markgroups = design->scratchpad_get_bool("abc9.markgroups", markgroups);
if (design->scratchpad.count("abc9.fast")) { box_file = design->scratchpad_get_string("abc9.box", box_file);
fast_mode = design->scratchpad_get_bool("abc9.fast", false /* default value if not bool-like */);
}
if (design->scratchpad.count("abc9.nocleanup")) {
cleanup = !design->scratchpad_get_bool("abc9.nocleanup", false /* default value if not bool-like */);
}
if (design->scratchpad.count("abc9.showtmp")) {
show_tempdir = design->scratchpad_get_bool("abc9.showtmp", false /* default value if not bool-like */);
}
if (design->scratchpad.count("abc9.markgroups")) {
markgroups = design->scratchpad_get_bool("abc9.markgroups", false /* default value if not bool-like */);
}
if (design->scratchpad.count("abc9.box")) {
box_file = design->scratchpad_get_string("abc9.box");
}
if (design->scratchpad.count("abc9.W")) { if (design->scratchpad.count("abc9.W")) {
wire_delay = "-W " + design->scratchpad_get_string("abc9.W"); wire_delay = "-W " + design->scratchpad_get_string("abc9.W");
} }
if (design->scratchpad.count("abc9.nomfs")) { nomfs = design->scratchpad_get_bool("abc9.nomfs", nomfs);
nomfs = design->scratchpad_get_bool("abc9.nomfs", false /* default value if not bool-like */);
}
size_t argidx; size_t argidx;
char pwd [PATH_MAX]; char pwd [PATH_MAX];