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

Nemanja Ivanovic via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 22 08:11:23 PDT 2021


nemanjai added a comment.

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

> In D110170#3014407 <https://reviews.llvm.org/D110170#3014407>, @mstorsjo wrote:
>
>> I also run into infinite loops caused by this commit. It's reproducible with https://martin.st/temp/qsettings-preproc.cpp with `clang -target x86_64-w64-mingw32 -c qsettings-preproc.cpp -O3 -std=c++17`. But that's not minimzed/reduced at all (and that source file takes a pretty significant amount of time to compile even to begin with).
>
>
>
> In D110170#3014232 <https://reviews.llvm.org/D110170#3014232>, @nemanjai wrote:
>
>> This is causing timeouts on a number of multistage builds. I have seen it at least on PPC, SystemZ and AArch64:
>> PPC: https://lab.llvm.org/buildbot/#/builders/121/builds/11680
>> PPC: https://lab.llvm.org/buildbot/#/builders/36/builds/12596
>> SystemZ: https://lab.llvm.org/buildbot/#/builders/8/builds/1821
>> AArch64: https://lab.llvm.org/buildbot/#/builders/179/builds/1073
>>
>> The timeout happens when the stage 1 compiler is building `lib/Transforms/Coroutines/CoroFrame.cpp`
>> I'll see if I can track down what is causing the infinite loop/recursion.
>
> Thanks for letting me know. I reverted the patch (and the follow-up that fixed a clang test failure at 52832cd917af0 <https://reviews.llvm.org/rG52832cd917af00e2b9c6a9d1476ba79754dcabff>), so I'm not holding up those bots while we investigate. I'm trying to reduce Martin's file now, but it is taking a while! If anyone finds a smaller example, please do post it here.

I am running a reducer on the CoroFrame.cpp one and it is pretty small so far and still reducing. I'll provide it once it is done in case it turns out to be useful.


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