[PATCH] D35635: Optimize {s,u}{add,sub}.with.overflow on ARM

Joel Galenson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 19 17:56:06 PDT 2017


jgalenson updated this revision to Diff 115940.
jgalenson added a comment.

Thanks for the info about ADC.  How come no test/assert picked that up?

Here's the rebased patch without that change.  You can see that uadd is slightly worse than sadd, but it's still an improvement.  I'll look into DAGCombine tomorrow, although I do think that it's fine to do at least some of it at the MI level, since the code there already handles some cases and I'm extending it to catch a few more that it misses.  But if it can be done at the DAG level, that's worth doing.


https://reviews.llvm.org/D35635

Files:
  lib/Target/ARM/ARMISelLowering.cpp
  lib/Target/ARM/ARMISelLowering.h
  test/CodeGen/ARM/su-addsub-overflow.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D35635.115940.patch
Type: text/x-patch
Size: 8677 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170920/1664b141/attachment.bin>


More information about the llvm-commits mailing list