[PATCH] D65802: [DAGCombiner] Rebuild (setcc x, y, ==) from (xor (xor x, y), 1)

Roger Ferrer Ibanez via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 8 00:03:07 PDT 2019


rogfer01 marked 3 inline comments as done.
rogfer01 added inline comments.


================
Comment at: llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp:13495-13497
   // Transform br(xor(x, y)) -> br(x != y)
   // Transform br(xor(xor(x,y), 1)) -> br (x == y)
   if (N.getOpcode() == ISD::XOR) {
----------------
rogfer01 wrote:
> spatel wrote:
> > That comment makes me nervous given the logic. Can we assert that N has one user and that user is a br?
> I tried checking that the user is a `br` but then lots of other unrelated tests started failing.
> 
> I will look closer what is going on here.
I must have done something silly earlier because this seems OK.


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

https://reviews.llvm.org/D65802





More information about the llvm-commits mailing list