[llvm] [LoopVectorize] Teach LoopVectorizationLegality about more early exits (PR #107004)
David Sherwood via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 9 04:18:23 PDT 2024
================
@@ -2445,8 +2445,11 @@ bool LoopAccessInfo::analyzeLoop(AAResults *AA, const LoopInfo *LI,
// vectorize a loop if it contains known function calls that don't set
// the flag. Therefore, it is safe to ignore this read from memory.
auto *Call = dyn_cast<CallInst>(&I);
- if (Call && getVectorIntrinsicIDForCall(Call, TLI))
- continue;
+ if (Call) {
+ NumCalls++;
----------------
david-arm wrote:
This now makes me wonder about operations such as integer divides that may generate exceptions and whether or not such operations should be considered legal in an early exit block.
https://github.com/llvm/llvm-project/pull/107004
More information about the llvm-commits
mailing list