diff options
author | Andrew Zonenberg <azonenberg@drawersteak.com> | 2016-04-24 22:11:56 -0700 |
---|---|---|
committer | Andrew Zonenberg <azonenberg@drawersteak.com> | 2016-04-24 22:11:56 -0700 |
commit | d57c85111f4136e5ae098aa42cd337f82dd4b57e (patch) | |
tree | a63703d5fabc07ec6db777d56bb388b2ac3c99a7 /kernel/driver.cc | |
parent | 349d7172023e9ee38b8e25e3bd04e2dfd0af1e62 (diff) | |
parent | b1d6f05fa2156017f50383d01d49342c8ec5e209 (diff) | |
download | yosys-d57c85111f4136e5ae098aa42cd337f82dd4b57e.tar.gz yosys-d57c85111f4136e5ae098aa42cd337f82dd4b57e.tar.bz2 yosys-d57c85111f4136e5ae098aa42cd337f82dd4b57e.zip |
Merge https://github.com/cliffordwolf/yosys
Diffstat (limited to 'kernel/driver.cc')
-rw-r--r-- | kernel/driver.cc | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/kernel/driver.cc b/kernel/driver.cc index 0844eaa2e..45cdd461d 100644 --- a/kernel/driver.cc +++ b/kernel/driver.cc @@ -216,6 +216,7 @@ int main(int argc, char **argv) printf(" -D <header_id>[:<filename>]\n"); printf(" dump the design when printing the specified log header to a file.\n"); printf(" yosys_dump_<header_id>.il is used as filename if none is specified.\n"); + printf(" Use 'ALL' as <header_id> to dump at every header.\n"); printf("\n"); printf(" -V\n"); printf(" print version information and exit\n"); @@ -322,13 +323,23 @@ int main(int argc, char **argv) case 'D': { auto args = split_tokens(optarg, ":"); - if (GetSize(args) == 1) - args.push_back("yosys_dump_" + args[0] + ".il"); - if (GetSize(args) != 2) { - fprintf(stderr, "Invalid number of tokens in -D.\n"); - exit(1); + if (!args.empty() && args[0] == "ALL") { + if (GetSize(args) != 1) { + fprintf(stderr, "Invalid number of tokens in -D ALL.\n"); + exit(1); + } + log_hdump_all = true; + } else { + if (!args.empty() && !args[0].empty() && args[0].back() == '.') + args[0].pop_back(); + if (GetSize(args) == 1) + args.push_back("yosys_dump_" + args[0] + ".il"); + if (GetSize(args) != 2) { + fprintf(stderr, "Invalid number of tokens in -D.\n"); + exit(1); + } + log_hdump[args[0]].insert(args[1]); } - log_hdump[args[0]].insert(args[1]); } break; default: |