[PATCH] D110620: [SCEV] Infer ranges for SCC consisting of cycled Phis
Max Kazantsev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 5 05:02:20 PDT 2021
mkazantsev added inline comments.
================
Comment at: llvm/lib/Analysis/ScalarEvolution.cpp:6327
+ else {
+ auto SharpenedRange =
+ I->second.intersectWith(ConservativeResult, RangeType);
----------------
mkazantsev wrote:
> reames wrote:
> > Does this ever get hit? I'd expect this to be unreachable as we'd always traverse the same SCC by definition from any entry.
> I think you are right. Need to check.
Actually no, this happens quite often. Here is what happens when I add assert:
```
Failed Tests (22):
LLVM :: Analysis/CostModel/X86/interleaved-load-f64-stride-4.ll
LLVM :: Analysis/CostModel/X86/interleaved-load-i16-stride-6.ll
LLVM :: Analysis/CostModel/X86/interleaved-store-f32-stride-2.ll
LLVM :: Analysis/CostModel/X86/interleaved-store-i32-stride-4.ll
LLVM :: Analysis/CostModel/X86/interleaved-store-i32-stride-6.ll
LLVM :: Analysis/CostModel/X86/interleaved-store-i64-stride-3.ll
LLVM :: Analysis/CostModel/X86/interleaved-store-i8-stride-6.ll
LLVM :: CodeGen/AMDGPU/amdpal-callable.ll
LLVM :: CodeGen/AMDGPU/wave32.ll
LLVM :: CodeGen/ARM/loop-indexing.ll
LLVM :: CodeGen/Hexagon/swp-epilog-reuse4.ll
LLVM :: CodeGen/X86/stack-protector.ll
LLVM :: CodeGen/X86/vector-fshl-256.ll
LLVM :: Transforms/Attributor/willreturn.ll
LLVM :: Transforms/IndVarSimplify/no-iv-rewrite.ll
LLVM :: Transforms/LoopStrengthReduce/lsr-comp-time.ll
LLVM :: Transforms/LoopUnroll/runtime-loop-branchweight.ll
LLVM :: Transforms/LoopUnroll/runtime-loop2.ll
LLVM :: Transforms/LoopVectorize/ARM/tail-folding-counting-down.ll
LLVM :: Transforms/LoopVectorize/PowerPC/reg-usage.ll
LLVM :: Transforms/LoopVectorize/X86/gather_scatter.ll
LLVM :: Transforms/LoopVectorize/tail-folding-counting-down.ll
```
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D110620/new/
https://reviews.llvm.org/D110620
More information about the llvm-commits
mailing list