Lines Matching defs:BinopMatcher
286 template <typename LeftExpr, typename RightExpr, MachineType rep> struct BinopMatcher : public Gate… struct
287 explicit BinopMatcher(GateRef gate, Circuit *circuit) in BinopMatcher() argument
295 BinopMatcher(GateRef gate, bool allowInputSwap, Circuit *circuit) in BinopMatcher() function
303 using LeftMatcher = LeftExpr;
304 using RightMatcher = RightExpr;
308 const LeftExpr &Left() const in Left()
313 const RightExpr &Right() const in Right()
318 void SetLeft(GateRef left, Circuit* circuit) in SetLeft()
323 void SetRight(GateRef right, Circuit* circuit) in SetRight()
328 bool IsFoldable() const in IsFoldable()
332 bool LeftEqualsRight() const in LeftEqualsRight()
337 bool OwnsInput(GateRef input) in OwnsInput()
349 void SwapInputs() in SwapInputs()
357 void PutConstantOnRight() in PutConstantOnRight()
383 using Int32BinopMatcher = BinopMatcher<Int32Matcher, Int32Matcher, MachineType::I32>; argument