aboutsummaryrefslogtreecommitdiffstats
path: root/passes/techmap/techmap.cc
diff options
context:
space:
mode:
authorAndrew Zonenberg <azonenberg@drawersteak.com>2017-02-14 08:29:37 -0800
committerAndrew Zonenberg <azonenberg@drawersteak.com>2017-02-14 08:29:37 -0800
commit6fed2dc996a57b0f7c4205e1d76da865dd410982 (patch)
treeab980df43bc10a3aeefb2220b17885e210eeb0a7 /passes/techmap/techmap.cc
parent203b521a781ccc4c8dba05d2cc73e4625bcf2a8e (diff)
parent4fb800717101c65344fe78a365b8ae6ca0a90d9e (diff)
downloadyosys-6fed2dc996a57b0f7c4205e1d76da865dd410982.tar.gz
yosys-6fed2dc996a57b0f7c4205e1d76da865dd410982.tar.bz2
yosys-6fed2dc996a57b0f7c4205e1d76da865dd410982.zip
Merge https://github.com/cliffordwolf/yosys
Diffstat (limited to 'passes/techmap/techmap.cc')
-rw-r--r--passes/techmap/techmap.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/passes/techmap/techmap.cc b/passes/techmap/techmap.cc
index 6784f48c3..b351d3be8 100644
--- a/passes/techmap/techmap.cc
+++ b/passes/techmap/techmap.cc
@@ -305,10 +305,15 @@ struct TechmapWorker
// approach that yields nicer outputs:
// replace internal wires that are connected to external wires
- if (w->port_output)
+ if (w->port_output && !w->port_input) {
port_signal_map.add(c.second, c.first);
- else
+ } else
+ if (!w->port_output && w->port_input) {
port_signal_map.add(c.first, c.second);
+ } else {
+ module->connect(c);
+ extra_connect = SigSig();
+ }
for (auto &attr : w->attributes) {
if (attr.first == "\\src")