[PATCH] D60649: [InstCombine] Remove redundant/bogus mul_with_overflow folds

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 13 02:56:06 PDT 2019


lebedev.ri added a comment.

In D60649#1465383 <https://reviews.llvm.org/D60649#1465383>, @nikic wrote:

> @lebedev.ri Those aren't constant folds though. They fold to `{%x, false}`, which has to be created as something like `insertvalue {undef, false}, 0, %x`, which is non-constant. Or is the idea here more along the lines of folding `extractvalue addo(%x, 0), 1` to false in instsimplify? That would be possible, but doesn't seem like the right thing to do to me.


Uhm, i think i have used wrong word.
What i meant is that those folds don't create new instructions (but simply return
one of the arguments, in this case), therefore they should be in instsimplify.
That's the distinction between instcombine vs instsimplify.


Repository:
  rL LLVM

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

https://reviews.llvm.org/D60649





More information about the llvm-commits mailing list