diff options
| author | Eddie Hung <eddie@fpgeh.com> | 2019-12-31 16:12:40 -0800 | 
|---|---|---|
| committer | Eddie Hung <eddie@fpgeh.com> | 2019-12-31 16:12:40 -0800 | 
| commit | cac7f5d82eb2760bcc248d15315b0d8460c92cb0 (patch) | |
| tree | c245e915251ef6f574579119e73565307c687f6d /passes | |
| parent | 6b825c719b5bf6f63d3397cfadf8293b5d14dde6 (diff) | |
| download | yosys-cac7f5d82eb2760bcc248d15315b0d8460c92cb0.tar.gz yosys-cac7f5d82eb2760bcc248d15315b0d8460c92cb0.tar.bz2 yosys-cac7f5d82eb2760bcc248d15315b0d8460c92cb0.zip | |
Do not re-order carry chain ports, just precompute iteration order
Diffstat (limited to 'passes')
| -rw-r--r-- | passes/techmap/abc9.cc | 22 | 
1 files changed, 0 insertions, 22 deletions
| diff --git a/passes/techmap/abc9.cc b/passes/techmap/abc9.cc index b63a1aa6c..1ae1637bd 100644 --- a/passes/techmap/abc9.cc +++ b/passes/techmap/abc9.cc @@ -1003,28 +1003,6 @@ struct Abc9Pass : public Pass {  					log_error("Module '%s' contains an 'abc9_carry' input port but no output port.\n", log_id(m));  				if (!carry_in && carry_out)  					log_error("Module '%s' contains an 'abc9_carry' output port but no input port.\n", log_id(m)); -				// Make carry_in the last PI, and carry_out the last PO -				//   since ABC requires it this way -				auto &ports = m->ports; -				for (auto it = ports.begin(); it != ports.end(); ) { -					RTLIL::Wire* w = m->wire(*it); -					log_assert(w); -					if (w == carry_in || w == carry_out) { -						it = ports.erase(it); -						continue; -					} -					if (w->port_id > carry_in->port_id) -						--w->port_id; -					if (w->port_id > carry_out->port_id) -						--w->port_id; -					log_assert(w->port_input || w->port_output); -					log_assert(ports[w->port_id-1] == w->name); -					++it; -				} -				ports.push_back(carry_in->name); -				carry_in->port_id = ports.size(); -				ports.push_back(carry_out->name); -				carry_out->port_id = ports.size();  			}  		} | 
