[all-commits] [llvm/llvm-project] 848d63: [LV] Fix unintended SCEV cache population when que...
Igor Kirillov via All-commits
all-commits at lists.llvm.org
Wed Aug 5 05:43:35 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 848d63cb3b9a67aa401f44e08930a16784d88418
https://github.com/llvm/llvm-project/commit/848d63cb3b9a67aa401f44e08930a16784d88418
Author: Igor Kirillov <igor.kirillov at arm.com>
Date: 2026-08-05 (Wed, 05 Aug 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[LV] Fix unintended SCEV cache population when querying UnrollVectorizedLoop (#208500)
LoopVectorize queried getUnrollingPreferences after VPlan execution,
when the vector loop had already been created. If the target hook
queries ScalarEvolution, this populates the SCEV caches with expressions
for the new loop and changes which existing values SCEVExpander reuses
later.
This is exposed by #205102, where the new AArch64 unrolling preferences
cause unrelated LoopVectorize tests to produce different IR.
UnrollVectorizedLoop is a target-wide preference. Query it on the
original loop before VPlan execution and before its SCEV information is
forgotten. This prevents the preference query from polluting subsequent
SCEV expansion.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list