[PATCH] D89178: [X86] Alternate implementation of D88194.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Oct 10 19:43:56 PDT 2020


craig.topper added inline comments.


================
Comment at: llvm/lib/Target/X86/X86ISelDAGToDAG.cpp:858
+          --I;
+          CurDAG->ReplaceAllUsesOfValueWith(SDValue(N, 0), Complement);
+          ++I;
----------------
xiangzhangllvm wrote:
> Can we replace a constant with a reg without checking the operation?
> I am afraid it may cause ISEL failed.
Cases that require constants should be using ISD::TargetConstant instead of ISD::Constant.

I fixed one case I found where it would break in 375849518db97096212f7f2b996b0d15f97be959. There might be others. I'll try to see if I can find a way to check the isel tables for other cases.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D89178



More information about the llvm-commits mailing list