Skip to content

Commit dfd20dc

Browse files
committed
BMC: remove dead sequence cases
Cases relating to sequence expressions are now fully handled in property_obligations_rec.
1 parent 5e8e457 commit dfd20dc

File tree

1 file changed

+7
-32
lines changed

1 file changed

+7
-32
lines changed

src/trans-word-level/instantiate_word_level.cpp

+7-32
Original file line numberDiff line numberDiff line change
@@ -123,40 +123,15 @@ wl_instantiatet::instantiate_rec(exprt expr, const mp_integer &t) const
123123
expr.id() == ID_typecast && expr.type().id() == ID_bool &&
124124
to_typecast_expr(expr).op().type().id() == ID_verilog_sva_sequence)
125125
{
126-
auto &sequence = to_typecast_expr(expr).op();
127-
128-
// sequence expressions -- these may have multiple potential
129-
// match points, and evaluate to true if any of them matches
130-
const auto matches = instantiate_sequence(sequence, t, no_timeframes);
131-
exprt::operandst disjuncts;
132-
disjuncts.reserve(matches.size());
133-
mp_integer max = t;
134-
135-
for(auto &match : matches)
136-
{
137-
disjuncts.push_back(match.condition);
138-
max = std::max(max, match.end_time);
139-
}
140-
141-
return {max, disjunction(disjuncts)};
126+
// should have been done by property_obligations_rec
127+
PRECONDITION(false);
142128
}
143-
else if(expr.id() == ID_sva_sequence_property)
129+
else if(
130+
expr.id() == ID_sva_sequence_property || expr.id() == ID_sva_weak ||
131+
expr.id() == ID_sva_strong)
144132
{
145-
// sequence expressions -- these may have multiple potential
146-
// match points, and evaluate to true if any of them matches
147-
auto &sequence = to_sva_sequence_property_expr(expr);
148-
const auto matches = instantiate_sequence(sequence, t, no_timeframes);
149-
exprt::operandst disjuncts;
150-
disjuncts.reserve(matches.size());
151-
mp_integer max = t;
152-
153-
for(auto &match : matches)
154-
{
155-
disjuncts.push_back(match.condition);
156-
max = std::max(max, match.end_time);
157-
}
158-
159-
return {max, disjunction(disjuncts)};
133+
// should have been done by property_obligations_rec
134+
PRECONDITION(false);
160135
}
161136
else if(expr.id() == ID_verilog_past)
162137
{

0 commit comments

Comments
 (0)