Lines Matching defs:VPSingleDefRecipe
15 /// 3. Pure virtual VPSingleDefRecipe serving as a base class for recipes that
831 static inline bool classof(const VPSingleDefRecipe *R) { \
838 class VPSingleDefRecipe : public VPRecipeBase, public VPValue {
841 VPSingleDefRecipe(const unsigned char SC, IterT Operands, DebugLoc DL = {})
844 VPSingleDefRecipe(const unsigned char SC, ArrayRef<VPValue *> Operands,
849 VPSingleDefRecipe(const unsigned char SC, IterT Operands, Value *UV,
905 virtual VPSingleDefRecipe *clone() override = 0;
916 /// Print this VPSingleDefRecipe to dbgs() (for debugging).
922 class VPRecipeWithIRFlags : public VPSingleDefRecipe {
988 : VPSingleDefRecipe(SC, Operands, DL) {
995 : VPSingleDefRecipe(SC, Operands, &I, I.getDebugLoc()) {
1026 : VPSingleDefRecipe(SC, Operands, DL), OpType(OperationType::Cmp),
1032 : VPSingleDefRecipe(SC, Operands, DL),
1038 : VPSingleDefRecipe(SC, Operands, DL), OpType(OperationType::FPMathOp),
1044 : VPSingleDefRecipe(SC, Operands, DL), OpType(OperationType::DisjointOp),
1051 : VPSingleDefRecipe(SC, Operands, DL), OpType(OperationType::GEPOp),
1587 class VPScalarCastRecipe : public VPSingleDefRecipe {
1597 : VPSingleDefRecipe(VPDef::VPScalarCastSC, {Op}, DL), Opcode(Opcode),
2033 class VPHeaderPHIRecipe : public VPSingleDefRecipe {
2037 : VPSingleDefRecipe(VPDefID, ArrayRef<VPValue *>(), UnderlyingInstr, DL) {
2308 class VPWidenPHIRecipe : public VPSingleDefRecipe {
2316 : VPSingleDefRecipe(VPDef::VPWidenPHISC, ArrayRef<VPValue *>(), Phi, DL) {
2452 class VPPartialReductionRecipe : public VPSingleDefRecipe {
2462 : VPSingleDefRecipe(VPDef::VPPartialReductionSC,
2499 class VPBlendRecipe : public VPSingleDefRecipe {
2506 : VPSingleDefRecipe(VPDef::VPBlendSC, Operands, Phi, Phi->getDebugLoc()) {
2661 class VPReductionRecipe : public VPSingleDefRecipe {
2672 : VPSingleDefRecipe(SC, Operands, I, DL), RdxDesc(R),
2914 class VPPredInstPHIRecipe : public VPSingleDefRecipe {
2919 : VPSingleDefRecipe(VPDef::VPPredInstPHISC, PredV, DL) {}
3199 class VPExpandSCEVRecipe : public VPSingleDefRecipe {
3205 : VPSingleDefRecipe(VPDef::VPExpandSCEVSC, {}), Expr(Expr), SE(SE) {}
3378 class VPWidenCanonicalIVRecipe : public VPSingleDefRecipe,
3382 : VPSingleDefRecipe(VPDef::VPWidenCanonicalIVSC, {CanonicalIV}) {}
3415 class VPDerivedIVRecipe : public VPSingleDefRecipe {
3437 : VPSingleDefRecipe(VPDef::VPDerivedIVSC, {Start, IV, Step}), Kind(Kind),