search for: d22271

Displaying 4 results from an estimated 4 matches for "d22271".

2016 Jul 19
3
X86ISelLowering: Promote 'add nsw' to a wider type
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:
2016 Aug 08
2
X86ISelLowering: Promote 'add nsw' to a wider type
...R (InstCombine) rather than the backend: What is the current status of this work? Does it make sense to patch the existing code in X86ISelLowering in order to support looking through zext or the generic solution will be available soon? Artur 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 cou...
2016 Jul 27
2
Remove zext-unfolding from InstCombine
Hi Sanjay, thank you a lot for your answer. I understand that in your examples it is desirable that `foo` and `goo` are canonicalized to the same IR, i.e., something like `@goo`. However, I still have a few open questions, but please correct me in case I'm thinking in the wrong direction. > Am 21.07.2016 um 18:51 schrieb Sanjay Patel <spatel at rotateright.com>: > > I've
2016 Aug 04
2
Remove zext-unfolding from InstCombine
...of instructions where we only have one icmp that is zexted. As you noted, we can't add the 'not' ops back in because there's another fold that removes them. > > It may be helpful to look at the chunk of code that I removed from matchDeMorgansLaws() in https://reviews.llvm.org/D22271 ; it's not what we need to solve this case, but that's the general form of the pattern matching that we probably want. Ok, I understand, thank you for the clarification. I’ve therefore tried to add the following pattern matches to matchDeMorgansLaws(): (A ^ 1) | zext(B == 0) -> (A &amp...