Skip to content
  • Florian Hahn's avatar
    [LV] Keep track of cost-based ScalarAfterVec in VPWidenPointerInd. · b73d2c8c
    Florian Hahn authored
    Epilogue vectorization uses isScalarAfterVectorization to check if
    widened versions for inductions need to be generated and bails out in
    those cases.
    
    At the moment, there are scenarios where isScalarAfterVectorization
    returns true but VPWidenPointerInduction::onlyScalarsGenerated would
    return false, causing widening.
    
    This can lead to widened phis with incorrect start values being created
    in the epilogue vector body.
    
    This patch addresses the issue by storing the cost-model decision in
    VPWidenPointerInductionRecipe and restoring the behavior before 151c1443.
    This effectively reverts 151c1443, but the long-term fix is to properly
    support widened inductions during epilogue vectorization
    
    Fixes #57712.
    b73d2c8c