aboutsummaryrefslogtreecommitdiffstats
path: root/passes/techmap
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2020-01-13 19:21:11 -0800
committerEddie Hung <eddie@fpgeh.com>2020-01-13 19:21:11 -0800
commita6d4ea74634826741f09793c36d596f2fa239f62 (patch)
tree37e4bdc7f77b77c60d69516f9aa150c2c4c0579d /passes/techmap
parent9ec948f3965eef214bee3af778b67fdd6ee86929 (diff)
downloadyosys-a6d4ea74634826741f09793c36d596f2fa239f62.tar.gz
yosys-a6d4ea74634826741f09793c36d596f2fa239f62.tar.bz2
yosys-a6d4ea74634826741f09793c36d596f2fa239f62.zip
abc9: respect (* keep *) on cells
Diffstat (limited to 'passes/techmap')
-rw-r--r--passes/techmap/abc9_ops.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/passes/techmap/abc9_ops.cc b/passes/techmap/abc9_ops.cc
index cc22fd474..9cc58c99d 100644
--- a/passes/techmap/abc9_ops.cc
+++ b/passes/techmap/abc9_ops.cc
@@ -489,6 +489,8 @@ void reintegrate(RTLIL::Module *module)
std::vector<Cell*> boxes;
for (auto cell : module->cells().to_vector()) {
+ if (cell->has_keep_attr())
+ continue;
if (cell->type.in(ID($_AND_), ID($_NOT_), ID($__ABC9_FF_)))
module->remove(cell);
else if (cell->attributes.erase("\\abc9_box_seq"))