summaryrefslogtreecommitdiff
path: root/passes
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2014-01-17 16:42:40 +0100
committerClifford Wolf <clifford@clifford.at>2014-01-17 16:42:40 +0100
commit2e370d5a2f364a469f11a2dc6f4217a9e9880a1c (patch)
tree0b0d823ab22dfdb0851f7d5d6e1651a4bc4cf36e /passes
parent651ce67d979d355c53e9bf17b91b22368adca072 (diff)
Added support for $adff with undef data inputs to opt_rmdff
Diffstat (limited to 'passes')
-rw-r--r--passes/opt/opt_rmdff.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/passes/opt/opt_rmdff.cc b/passes/opt/opt_rmdff.cc
index a84bf437..9ce98004 100644
--- a/passes/opt/opt_rmdff.cc
+++ b/passes/opt/opt_rmdff.cc
@@ -92,6 +92,12 @@ static bool handle_dff(RTLIL::Module *mod, RTLIL::Cell *dff)
}
}
+ if (sig_d.is_fully_undef() && sig_d.width == int(val_rv.bits.size())) {
+ RTLIL::SigSig conn(sig_q, val_rv);
+ mod->connections.push_back(conn);
+ goto delete_dff;
+ }
+
if (sig_d.is_fully_const() && sig_r.width == 0) {
RTLIL::SigSig conn(sig_q, sig_d);
mod->connections.push_back(conn);