Lines Matching defs:select
62 /// Matches a block containing a select-based min/max reduction. The types of
63 /// select and compare operations are provided as template arguments. The
81 "only arithmetic and llvm select ops are supported");
91 auto select = dyn_cast<SelectOpTy>(block.front().getNextNode());
93 if (!compare || !select || !terminator)
111 if (select.getCondition() != compare.getResult())
114 // Detect if the operands are swapped between cmpf and select. Match the
117 // std and LLVM versions of select have different operand names but identical
121 bool sameOperands = select.getOperand(kTrueValue) == compare.getLhs() &&
122 select.getOperand(kFalseValue) == compare.getRhs();
123 bool swappedOperands = select.getOperand(kTrueValue) == compare.getRhs() &&
124 select.getOperand(kFalseValue) == compare.getLhs();
128 if (select.getResult() != terminator.getResult())
313 // Match select-based min/max reductions.