CGP can move instructions like a ptrtoint into a loop, but the MVETailPredication when converting them will currently assume invariant trip counts. This tries to ensure the operands are loop invariant, and bails if not.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
Yep, looks like a good fix to me.
llvm/test/CodeGen/Thumb2/mve-tailpred-loopinvariant.ll | ||
---|---|---|
85 | Not that I mind too much, but can we not reduce this test case a bit? |
llvm/test/CodeGen/Thumb2/mve-tailpred-loopinvariant.ll | ||
---|---|---|
85 | This test I actually want to turn into something better, I have managed to write up some test and put that into D101263. Otherwise we have to do something about the vectorizer costs, because this is obviously not beneficial. I'm hoping that by optimizing it we can keep the vectorization. |
Not that I mind too much, but can we not reduce this test case a bit?