diff options
author | Eddie Hung <eddie@fpgeh.com> | 2020-05-02 14:16:10 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-02 14:16:10 -0700 |
commit | 73601554591da7d0034bff916400c5fca5445d13 (patch) | |
tree | 61f6ae4578c4d68edaaca628a74c76926d9ea18f /passes/techmap/abc9_ops.cc | |
parent | ca3fc3c882b9a454c48bee7d701fa5cb254ae671 (diff) | |
parent | da7da4491901e8c76682b6423658debe160771d9 (diff) | |
download | yosys-73601554591da7d0034bff916400c5fca5445d13.tar.gz yosys-73601554591da7d0034bff916400c5fca5445d13.tar.bz2 yosys-73601554591da7d0034bff916400c5fca5445d13.zip |
Merge pull request #2013 from YosysHQ/eddie/aiger_fixes
aiger: fixes for ports that have start_offset != 0
Diffstat (limited to 'passes/techmap/abc9_ops.cc')
-rw-r--r-- | passes/techmap/abc9_ops.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/passes/techmap/abc9_ops.cc b/passes/techmap/abc9_ops.cc index 78c902866..1345188a4 100644 --- a/passes/techmap/abc9_ops.cc +++ b/passes/techmap/abc9_ops.cc @@ -741,8 +741,10 @@ void reintegrate(RTLIL::Module *module) if (mapped_mod == NULL) log_error("ABC output file does not contain a module `%s$abc'.\n", log_id(module)); - for (auto w : mapped_mod->wires()) - module->addWire(remap_name(w->name), GetSize(w)); + for (auto w : mapped_mod->wires()) { + auto nw = module->addWire(remap_name(w->name), GetSize(w)); + nw->start_offset = w->start_offset; + } dict<IdString,std::vector<IdString>> box_ports; @@ -989,7 +991,7 @@ void reintegrate(RTLIL::Module *module) wire->attributes.erase(ID::abc9_scc); RTLIL::Wire *remap_wire = module->wire(remap_name(port)); - RTLIL::SigSpec signal(wire, 0, GetSize(remap_wire)); + RTLIL::SigSpec signal(wire, remap_wire->start_offset-wire->start_offset, GetSize(remap_wire)); log_assert(GetSize(signal) >= GetSize(remap_wire)); RTLIL::SigSig conn; |