aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
diff options
context:
space:
mode:
authorSushant Gokhale <sgokhale@nvidia.com>2025-08-11 00:24:50 -0700
committerGitHub <noreply@github.com>2025-08-11 00:24:50 -0700
commite8918c318ee62973867e7ac3d3250a4478f2f04d (patch)
tree72769ac27f5be205fb920d2608d070539d3c6fef /llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
parente92b7e9641949f9d9c2ca8964c31a437272d15af (diff)
downloadllvm-e8918c318ee62973867e7ac3d3250a4478f2f04d.zip
llvm-e8918c318ee62973867e7ac3d3250a4478f2f04d.tar.gz
llvm-e8918c318ee62973867e7ac3d3250a4478f2f04d.tar.bz2
[SCEV] Consider non-volatile memory intrinsics as not having side-effect for forward progress (#150916)
For the attached test: Before the loop-idiom pass, we have a store into the inner loop which is considered simple and one that does not have any side effects on the loop. Post loop-idiom pass, we get a memset into the outer loop that is considered to introduce side effects on the loop. This changes the backedge taken count before and after the pass and hence, the crash with verify-scev. We try to consider non-volatile memory intrinsics as not having side-effect for forward progress to fix the issue. Fixes #149377
Diffstat (limited to 'llvm/lib/Transforms/IPO/FunctionSpecialization.cpp')
0 files changed, 0 insertions, 0 deletions