aboutsummaryrefslogtreecommitdiffstats
path: root/passes/fsm/fsm_detect.cc
diff options
context:
space:
mode:
Diffstat (limited to 'passes/fsm/fsm_detect.cc')
-rw-r--r--passes/fsm/fsm_detect.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/passes/fsm/fsm_detect.cc b/passes/fsm/fsm_detect.cc
index 61e6f8011..fb3896669 100644
--- a/passes/fsm/fsm_detect.cc
+++ b/passes/fsm/fsm_detect.cc
@@ -173,9 +173,10 @@ static void detect_fsm(RTLIL::Wire *wire)
if (set_output || clr_output) {
for (auto &port_it : cell->connections())
- for (auto bit : assign_map(port_it.second))
- if (bit.wire != nullptr && !sig_q_bits.count(bit))
- goto next_cellport;
+ if (cell->input(port_it.first))
+ for (auto bit : assign_map(port_it.second))
+ if (bit.wire != nullptr && !sig_q_bits.count(bit))
+ goto next_cellport;
}
if (set_output || clr_output) {