aboutsummaryrefslogtreecommitdiffstats
path: root/passes
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2020-02-13 17:32:14 -0800
committerGitHub <noreply@github.com>2020-02-13 17:32:14 -0800
commit8c4c5460098a2c1056f78a7c6fb1d389e9f1f445 (patch)
tree0f053bf84129731e899e0de10e4ddc13d238914f /passes
parentcb7bc6a12fee1d948b7f91fd37f326dbd4f5ca47 (diff)
parent3065d4092e2d2f252a270ecadc1943833a68e384 (diff)
downloadyosys-8c4c5460098a2c1056f78a7c6fb1d389e9f1f445.tar.gz
yosys-8c4c5460098a2c1056f78a7c6fb1d389e9f1f445.tar.bz2
yosys-8c4c5460098a2c1056f78a7c6fb1d389e9f1f445.zip
Merge pull request #1699 from YosysHQ/eddie/fix_iopad_init
iopadmap: move \init attributes from outpad output to its input
Diffstat (limited to 'passes')
-rw-r--r--passes/techmap/iopadmap.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/passes/techmap/iopadmap.cc b/passes/techmap/iopadmap.cc
index 531ac2b99..a6e4fac14 100644
--- a/passes/techmap/iopadmap.cc
+++ b/passes/techmap/iopadmap.cc
@@ -423,6 +423,15 @@ struct IopadmapPass : public Pass {
}
}
+ if (wire->port_output) {
+ auto jt = new_wire->attributes.find(ID(init));
+ // For output ports, move \init attributes from old wire to new wire
+ if (jt != new_wire->attributes.end()) {
+ wire->attributes[ID(init)] = std::move(jt->second);
+ new_wire->attributes.erase(jt);
+ }
+ }
+
wire->port_id = 0;
wire->port_input = false;
wire->port_output = false;