[PATCH] D111810: [DebugInfo][LSR] Add more stringent checks on IV selection and cached dbg.value location-op SCEVs
Chris Jackson via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 14 08:14:08 PDT 2021
chrisjackson created this revision.
chrisjackson added reviewers: jmorse, StephenTozer, dblaikie, TWeaver, Orlando, aprantl.
chrisjackson added a project: debug-info.
Herald added subscribers: javed.absar, hiraditya.
chrisjackson requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Reported in Bug PR52161 <https://bugs.llvm.org/show_bug.cgi?id=52161>, there were two issues.
1. That IVs with SCEVs containing 'undef' could be selected. This would lead to fruitless salvage attempts.
2. Sometimes dbg.value arguments were cached along with a SCEVUnknown type for the value. Effectively this SCEV is a value, so no scev-based salvaging can usefully be performed in this case.
https://reviews.llvm.org/D111810
Files:
llvm/include/llvm/Analysis/ScalarEvolution.h
llvm/lib/Analysis/ScalarEvolution.cpp
llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
llvm/test/Transforms/LoopStrengthReduce/pr52161.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D111810.379724.patch
Type: text/x-patch
Size: 7406 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211014/d8d9fd49/attachment.bin>
More information about the llvm-commits
mailing list