diff options
author | Clifford Wolf <clifford@clifford.at> | 2013-03-24 12:05:25 +0100 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2013-03-24 12:05:25 +0100 |
commit | 05ae20f2609226d850e71324c9abe4539774f230 (patch) | |
tree | fe807229267e86aab4317840817938a0b7264ca6 /backends | |
parent | 8cc1c87ab8d7992e49dfd43232c38a26a13d6d66 (diff) | |
download | yosys-05ae20f2609226d850e71324c9abe4539774f230.tar.gz yosys-05ae20f2609226d850e71324c9abe4539774f230.tar.bz2 yosys-05ae20f2609226d850e71324c9abe4539774f230.zip |
Added -notypes option to intersynth backend
Diffstat (limited to 'backends')
-rw-r--r-- | backends/intersynth/intersynth.cc | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/backends/intersynth/intersynth.cc b/backends/intersynth/intersynth.cc index 0a50fa306..e0092ef18 100644 --- a/backends/intersynth/intersynth.cc +++ b/backends/intersynth/intersynth.cc @@ -60,10 +60,14 @@ struct IntersynthBackend : public Backend { log("Write the current design to an 'intersynth' netlist file. InterSynth is\n"); log("a tool for Coarse-Grain Example-Driven Interconnect Synthesis.\n"); log("\n"); + log(" -notypes\n"); + log(" do not generate celltypes and conntypes commands. i.e. just output\n"); + log(" the netlists. this is used for postsilicon synthesis.\n"); + log("\n"); log(" -lib <verilog_or_ilang_file>\n"); - log(" Use the specified library file for determining whether cell ports are\n"); - log(" inputs or outputs. This option can be used multiple times to specify\n"); - log(" more than one library.\n"); + log(" Use the specified library file for determining whether cell ports are\n"); + log(" inputs or outputs. This option can be used multiple times to specify\n"); + log(" more than one library.\n"); log("\n"); log("http://www.clifford.at/intersynth/\n"); log("\n"); @@ -75,10 +79,15 @@ struct IntersynthBackend : public Backend { std::vector<std::string> libfiles; std::vector<RTLIL::Design*> libs; + bool flag_notypes = false; size_t argidx; for (argidx = 1; argidx < args.size(); argidx++) { + if (args[argidx] == "-notypes") { + flag_notypes = true; + continue; + } if (args[argidx] == "-lib" && argidx+1 < args.size()) { libfiles.push_back(args[++argidx]); continue; @@ -170,10 +179,12 @@ struct IntersynthBackend : public Backend { netlists_code += code; } - for (auto code : conntypes_code) - fprintf(f, "%s", code.c_str()); - for (auto code : celltypes_code) - fprintf(f, "%s", code.c_str()); + if (!flag_notypes) { + for (auto code : conntypes_code) + fprintf(f, "%s", code.c_str()); + for (auto code : celltypes_code) + fprintf(f, "%s", code.c_str()); + } fprintf(f, "%s", netlists_code.c_str()); for (auto lib : libs) |