Lines Matching refs:Values

161 static SmallVector<VPValue *, 4> getOperands(ArrayRef<VPValue *> Values,  in getOperands()  argument
164 for (VPValue *V : Values) { in getOperands()
171 static bool areCommutative(ArrayRef<VPValue *> Values) { in areCommutative() argument
173 cast<VPInstruction>(Values[0])->getOpcode()); in areCommutative()
177 getOperands(ArrayRef<VPValue *> Values) { in getOperands() argument
179 auto *VPI = cast<VPInstruction>(Values[0]); in getOperands()
185 Result.push_back(getOperands(Values, 0)); in getOperands()
189 Result.push_back(getOperands(Values, I)); in getOperands()
197 static Optional<unsigned> getOpcode(ArrayRef<VPValue *> Values) { in getOpcode() argument
198 unsigned Opcode = cast<VPInstruction>(Values[0])->getOpcode(); in getOpcode()
199 if (any_of(Values, [Opcode](VPValue *V) { in getOpcode()
348 void VPlanSlp::dumpBundle(ArrayRef<VPValue *> Values) { in dumpBundle() argument
350 for (auto Op : Values) in dumpBundle()
358 VPInstruction *VPlanSlp::buildGraph(ArrayRef<VPValue *> Values) { in buildGraph() argument
359 assert(!Values.empty() && "Need some operands!"); in buildGraph()
362 auto I = BundleToCombined.find(to_vector<4>(Values)); in buildGraph()
368 for (auto *V : Values) { in buildGraph()
383 dumpBundle(Values); in buildGraph()
386 if (!areVectorizable(Values)) in buildGraph()
389 assert(getOpcode(Values) && "Opcodes for all values must match"); in buildGraph()
390 unsigned ValuesOpcode = getOpcode(Values).getValue(); in buildGraph()
393 if (areCommutative(Values)) { in buildGraph()
396 for (auto &Operands : getOperands(Values)) { in buildGraph()
403 if (OperandsOpcode && OperandsOpcode == getOpcode(Values)) { in buildGraph()
437 for (VPValue *V : Values) in buildGraph()
440 for (auto &Operands : getOperands(Values)) in buildGraph()
462 VPI->setUnderlyingInstr(cast<VPInstruction>(Values[0])->getUnderlyingInstr()); in buildGraph()
465 cast<VPInstruction>(Values[0])->print(dbgs()); dbgs() << "\n"); in buildGraph()
466 addCombined(Values, VPI); in buildGraph()