Ignore all 1'bx in (* init *)
authorEddie Hung <eddie@fpgeh.com>
Tue, 27 Aug 2019 16:24:59 +0000 (09:24 -0700)
committerEddie Hung <eddie@fpgeh.com>
Tue, 27 Aug 2019 16:24:59 +0000 (09:24 -0700)
passes/sat/sat.cc

index bcc690fa3817f553ac8c8ffa84f8ca87d34689e0..430bba1e82cec5139afaacb4182723b99f8edb28 100644 (file)
@@ -268,9 +268,7 @@ struct SatHelper
                                RTLIL::SigSpec removed_bits;
                                for (int i = 0; i < lhs.size(); i++) {
                                        RTLIL::SigSpec bit = lhs.extract(i, 1);
-                                       if (bit.is_fully_const() && rhs[i] == State::Sx)
-                                               rhs[i] = bit;
-                                       if (!satgen.initial_state.check_all(bit)) {
+                                       if (rhs[i] == State::Sx || !satgen.initial_state.check_all(bit)) {
                                                removed_bits.append(bit);
                                                lhs.remove(i, 1);
                                                rhs.remove(i, 1);