aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
diff options
context:
space:
mode:
authorFlorian Hahn <flo@fhahn.com>2024-02-20 14:03:25 +0000
committerGitHub <noreply@github.com>2024-02-20 14:03:25 +0000
commit4db93e5d56440be44d8ad2036e2579208c82ad37 (patch)
treea2f2aedd505ee122aae0eb45d527bcbe9ef7d8bc /llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
parentfcd6549e5801de938935b93fd2d13020b42eebdb (diff)
downloadllvm-4db93e5d56440be44d8ad2036e2579208c82ad37.zip
llvm-4db93e5d56440be44d8ad2036e2579208c82ad37.tar.gz
llvm-4db93e5d56440be44d8ad2036e2579208c82ad37.tar.bz2
[IndVars] Recompute flags if needed in widenIVUse of IV increment. (#82352)
widenIVUse may hoist a wide induction increment and introduce new uses, but does not recompute the wrap flags. In some cases this can make the new uses of the wide IV inc more poisonous. Update the code to recompute flags if needed when hoisting an IV. If both the narrow and wide IV increment's flags match and we can re-use the flags from the increments, there's no need to recompute the flags, as the replacement won't make the new uses of the wide IV's increment more poisonous. Note that this also updates a stale comment which claimed that the widen increment is only used if it dominates the new use. The helper should also be used to guard the code added in da437330be, which I am planning on doing separately once the helper lands. Fixes https://github.com/llvm/llvm-project/issues/82243.
Diffstat (limited to 'llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions