[PATCH] D37139: [x86] Extend the manual ISel of `add` and `sub` with both RMW memory operands and used flags to support matching immediate operands.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 1 23:29:56 PDT 2017


craig.topper updated this revision to Diff 113645.
craig.topper added a comment.

Don't truncate the APInt when creating the target constants. Normal isel doesn't do this. Keep the MemoryVT as the type for the target constants.

When looking for carry flag uses, only look at uses of result 1 of the ADD/SUB to find CopyToReg or other flag using instructions.


https://reviews.llvm.org/D37139

Files:
  lib/Target/X86/X86ISelDAGToDAG.cpp
  test/CodeGen/X86/add.ll
  test/CodeGen/X86/fold-rmw-ops.ll
  test/CodeGen/X86/peephole-na-phys-copy-folding.ll
  test/CodeGen/X86/pr32659.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37139.113645.patch
Type: text/x-patch
Size: 47213 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170902/7ab5a804/attachment.bin>


More information about the llvm-commits mailing list