[llvm-dev] X86ISelLowering: Promote 'add nsw' to a wider type

Sanjay Patel via llvm-dev llvm-dev at lists.llvm.org
Tue Jul 19 08:54:20 PDT 2016


Hi Artur -

I don't think there's any reason to limit the transform to sexts only;
that's just the case that was apparent in
https://llvm.org/bugs/show_bug.cgi?id=20134 , so I limited it to that
pattern.

It's probably worth noting that I'm currently fighting through casts of all
kinds in IR (InstCombine) rather than the backend:
https://reviews.llvm.org/D22421
https://reviews.llvm.org/D22271
https://reviews.llvm.org/D22477
https://reviews.llvm.org/D20774
https://llvm.org/bugs/show_bug.cgi?id=27925

I'm very interested to see what kinds of patterns you're seeing and want to
optimize. It's possible that IR transforms could eliminate the need for the
backend fixups...or it could make them harder. Are there bug reports for
the cases that you are looking at?


On Tue, Jul 19, 2016 at 9:13 AM, Artur Pilipenko <apilipenko at azulsystems.com
> wrote:

> Hi Sanjay,
>
> Some time ago you implemented a sext(add_nsw(x, C)) --> add(sext(x),
> C_sext) transformation in X86ISelLowering
> https://reviews.llvm.org/D13757
> Is there any reason why this transformation is limited to sexts and
> doesn’t support zexts?
>
> Thanks,
> Artur
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160719/d457f4a8/attachment.html>


More information about the llvm-dev mailing list