[llvm] [VPlan] Create VectorEndPointer with full NW flags (PR #151558)
    Florian Hahn via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Aug  4 01:37:53 PDT 2025
    
    
  
================
@@ -2594,9 +2595,7 @@ void VPlanTransforms::createInterleaveGroups(
     if (IG->isReverse()) {
       auto *ReversePtr = new VPVectorEndPointerRecipe(
           Addr, &Plan.getVF(), getLoadStoreType(IRInsertPos),
-          -(int64_t)IG->getFactor(),
-          InBounds ? GEPNoWrapFlags::inBounds() : GEPNoWrapFlags::none(),
-          InsertPos->getDebugLoc());
+          -(int64_t)IG->getFactor(), NW, InsertPos->getDebugLoc());
----------------
fhahn wrote:
Is this correct? If the original GEP has `nuw`, we will add `nuw` to a GEP with a negative offset. Adding a negative offset is likely to wrap in unsigned.
This probably should only preserve either inbounds or nusw, same for above
https://github.com/llvm/llvm-project/pull/151558
    
    
More information about the llvm-commits
mailing list