aboutsummaryrefslogtreecommitdiffstats
path: root/passes
diff options
context:
space:
mode:
authorAnton Blanchard <anton@linux.ibm.com>2022-02-23 18:54:28 +1100
committerAnton Blanchard <anton@ozlabs.org>2022-02-23 18:54:28 +1100
commit89300b2dca56e5d8e82a516376abc89a9e18d9db (patch)
tree63096b689080d87f5e4a8aef7489e79088980fbb /passes
parenta41c1df76f724476136e2668405ccae05494ebb8 (diff)
downloadyosys-89300b2dca56e5d8e82a516376abc89a9e18d9db.tar.gz
yosys-89300b2dca56e5d8e82a516376abc89a9e18d9db.tar.bz2
yosys-89300b2dca56e5d8e82a516376abc89a9e18d9db.zip
abc: Fix {I} and {P} substitution
We were searching for {D} after the first match of {I} or {P}.
Diffstat (limited to 'passes')
-rw-r--r--passes/techmap/abc.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/passes/techmap/abc.cc b/passes/techmap/abc.cc
index 80c6282c4..2c91f3a48 100644
--- a/passes/techmap/abc.cc
+++ b/passes/techmap/abc.cc
@@ -757,10 +757,10 @@ void abc_module(RTLIL::Design *design, RTLIL::Module *current_module, std::strin
for (size_t pos = abc_script.find("{D}"); pos != std::string::npos; pos = abc_script.find("{D}", pos))
abc_script = abc_script.substr(0, pos) + delay_target + abc_script.substr(pos+3);
- for (size_t pos = abc_script.find("{I}"); pos != std::string::npos; pos = abc_script.find("{D}", pos))
+ for (size_t pos = abc_script.find("{I}"); pos != std::string::npos; pos = abc_script.find("{I}", pos))
abc_script = abc_script.substr(0, pos) + sop_inputs + abc_script.substr(pos+3);
- for (size_t pos = abc_script.find("{P}"); pos != std::string::npos; pos = abc_script.find("{D}", pos))
+ for (size_t pos = abc_script.find("{P}"); pos != std::string::npos; pos = abc_script.find("{P}", pos))
abc_script = abc_script.substr(0, pos) + sop_products + abc_script.substr(pos+3);
for (size_t pos = abc_script.find("{S}"); pos != std::string::npos; pos = abc_script.find("{S}", pos))