[PATCH] D110170: [InstCombine] fold cast of right-shift if high bits are not demanded

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 22 13:41:38 PDT 2021


spatel added a comment.

In D110170#3016261 <https://reviews.llvm.org/D110170#3016261>, @spatel wrote:

> In D110170#3015960 <https://reviews.llvm.org/D110170#3015960>, @nemanjai wrote:
>
>> Reduced test case at https://pastebin.com/NVYbsRfD
>>
>> Run `opt -O3 -mtriple=powerpc64le-- -disable-output file.ll` and it doesn't terminate.
>
> Thanks! It should be easy to find the opposing transform now. I got that test down to an infinite loop with -instcombine and:

That was easy (I hope)...
We had a transform that was creating extra instructions without checking uses correctly, so we'd end up ping-pong'ing between that and this one. I don't see infinite looping on either of the failure examples posted here after:
1cd6b44f267b <https://reviews.llvm.org/rG1cd6b44f267b256051e6106d9cf665f3bae2fd22>


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D110170/new/

https://reviews.llvm.org/D110170



More information about the llvm-commits mailing list