[Diffusion] rG13ec913bdf50: [InstCombine] Recognize `((x * y) s/ x) !=/== y` as an signed multiplication…

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 30 11:43:00 PDT 2021


lebedev.ri added a comment.

In rG13ec913bdf500e2354cc55bf29e2f5d99e0c709e#1022854 <https://reviews.llvm.org/rG13ec913bdf500e2354cc55bf29e2f5d99e0c709e#1022854>, @craig.topper wrote:

> In rG13ec913bdf500e2354cc55bf29e2f5d99e0c709e#1022851 <https://reviews.llvm.org/rG13ec913bdf500e2354cc55bf29e2f5d99e0c709e#1022851>, @lebedev.ri wrote:
>
>> In rG13ec913bdf500e2354cc55bf29e2f5d99e0c709e#1022850 <https://reviews.llvm.org/rG13ec913bdf500e2354cc55bf29e2f5d99e0c709e#1022850>, @nickdesaulniers wrote:
>>
>>> Does D108928 <https://reviews.llvm.org/D108928> help this get re-landed?
>>
>> As far i'm concerned yes, i will be relanding this after that patch lands.
>> Thank you!
>
> Do we care that the backend codegen is suboptimal or are we just happy to avoid the division?

I think this is strictly an improvement ignoring edge-case of i64 @ 32-bit: https://godbolt.org/z/Gj9dd1Yxa


BRANCHES
  HEAD, main, release/13.x, upstream/release/13.x

TAGS
  llvmorg-13.0.0-rc1, llvmorg-13.0.0-rc2, llvmorg-14-init

Users:
  lebedev.ri (Author)

https://reviews.llvm.org/rG13ec913bdf50



More information about the llvm-commits mailing list