25 const unsigned MAX_CASES;
31 std::set<size_t> signedIndicesToReplace;
33 explicit ReplaceSelectRange(
unsigned max = 100) : MAX_CASES(max) {
34 setName(
"DoReplaceSelectRange");
37 const IR::Node *postorder(IR::SelectExpression *e)
override;
38 const IR::Node *postorder(IR::SelectCase *p)
override;
40 std::vector<const IR::Mask *> *rangeToMasks(
const IR::Range *,
size_t);
41 std::vector<IR::Vector<IR::Expression>> cartesianAppend(
43 const std::vector<const IR::Mask *> &masks);
44 std::vector<IR::Vector<IR::Expression>> cartesianAppend(
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:13