[llvm] [LoopVectorize] Perform loop versioning for some early exit loops (PR #120603)

David Sherwood via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 24 02:55:09 PST 2025


================
@@ -423,6 +430,19 @@ class LoopVectorizationLegality {
   unsigned getNumStores() const { return LAI->getNumStores(); }
   unsigned getNumLoads() const { return LAI->getNumLoads(); }
 
+  /// Return the number of pointers in the loop that could potentially fault in
+  /// a loop with uncountable early exits.
+  unsigned getNumPotentiallyFaultingPointers() const {
+    return PotentiallyFaultingPtrs.size();
+  }
+
+  /// Return a vector of all potentially faulting pointers in a loop with
+  /// uncountable early exits.
+  const SmallVectorImpl<std::pair<const SCEV *, Type *>> *
+  getPotentiallyFaultingPointers() const {
+    return &PotentiallyFaultingPtrs;
----------------
david-arm wrote:

Done

https://github.com/llvm/llvm-project/pull/120603


More information about the llvm-commits mailing list