32 const int maxShiftWidth = 5;
33 const IR::Expression *shift(
const IR::Operation_Binary *expression)
const;
38 setName(
"LowerExpressions");
41 const IR::Node *postorder(IR::Shl *expression)
override {
return shift(expression); }
42 const IR::Node *postorder(IR::Shr *expression)
override {
return shift(expression); }
43 const IR::Node *postorder(IR::Expression *expression)
override;
44 const IR::Node *postorder(IR::Slice *expression)
override;
45 const IR::Node *postorder(IR::Concat *expression)
override;
46 const IR::Node *postorder(IR::Cast *expression)
override;