summaryrefslogtreecommitdiff
path: root/passes
diff options
context:
space:
mode:
authorClifford Wolf <clifford@clifford.at>2013-06-09 14:21:18 +0200
committerClifford Wolf <clifford@clifford.at>2013-06-09 14:21:18 +0200
commit41932e8b64414da138e941c75f03077f43654c89 (patch)
treeb9678439aa0461b3403ba2ff2c63304014463d13 /passes
parentb7ba90910dfc06d89bf45b6ead9e40e9bf985fe1 (diff)
Added ezSAT api support for don't care values in models
Diffstat (limited to 'passes')
-rw-r--r--passes/sat/sat_solve.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/passes/sat/sat_solve.cc b/passes/sat/sat_solve.cc
index 362efb2d..eb9e3163 100644
--- a/passes/sat/sat_solve.cc
+++ b/passes/sat/sat_solve.cc
@@ -419,8 +419,11 @@ rerun_solver:
for (auto &info : modelInfo)
{
RTLIL::Const value;
- for (int i = 0; i < info.width; i++)
+ for (int i = 0; i < info.width; i++) {
value.bits.push_back(modelValues.at(info.offset+i) ? RTLIL::State::S1 : RTLIL::State::S0);
+ if (modelValues.size() == 2*modelExpressions.size() && modelValues.at(modelExpressions.size()+info.offset+i))
+ value.bits.back() = RTLIL::State::Sx;
+ }
if (info.timestep != last_timestep) {
const char *hline = "---------------------------------------------------------------------------------------------------"