diff options
author | Clifford Wolf <clifford@clifford.at> | 2013-06-09 14:21:18 +0200 |
---|---|---|
committer | Clifford Wolf <clifford@clifford.at> | 2013-06-09 14:21:18 +0200 |
commit | 41932e8b64414da138e941c75f03077f43654c89 (patch) | |
tree | b9678439aa0461b3403ba2ff2c63304014463d13 /passes/sat | |
parent | b7ba90910dfc06d89bf45b6ead9e40e9bf985fe1 (diff) | |
download | yosys-41932e8b64414da138e941c75f03077f43654c89.tar.gz yosys-41932e8b64414da138e941c75f03077f43654c89.tar.bz2 yosys-41932e8b64414da138e941c75f03077f43654c89.zip |
Added ezSAT api support for don't care values in models
Diffstat (limited to 'passes/sat')
-rw-r--r-- | passes/sat/sat_solve.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/passes/sat/sat_solve.cc b/passes/sat/sat_solve.cc index 362efb2de..eb9e31631 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 = "---------------------------------------------------------------------------------------------------" |