[PATCH] D58874: [DAGCombiner] fold (add (add (xor a, -1), b), 1) -> (sub b, a)

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Mar 2 06:44:08 PST 2019


lebedev.ri added a comment.

Looks sane https://rise4fun.com/Alive/Nfiz
But looks like it's missed in instcombine too?
https://godbolt.org/z/UdEwql



================
Comment at: lib/CodeGen/SelectionDAG/DAGCombiner.cpp:2196-2197
+    if (N0.getOpcode() == ISD::ADD ||
+        N0.getOpcode() == ISD::UADDO ||
+        N0.getOpcode() == ISD::SADDO) {
+      SDValue A, Xor;
----------------
Tests?


Repository:
  rL LLVM

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

https://reviews.llvm.org/D58874





More information about the llvm-commits mailing list