[PATCH] D61149: [DAGCombiner] try repeated fdiv divisor transform before building estimate

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 1 11:14:37 PDT 2019


spatel updated this revision to Diff 197596.
spatel added a reviewer: nemanjai.
spatel added a comment.
This revision is now accepted and ready to land.

Patch updated:
Add a check for a vector splat of "1.0" when bailing out of the repeated divisor transform. I suspect this bug may be present independently of the original change here (moving the order of the transforms), but I didn't try to create another test case to prove that.

A reduction of the infinite looping test from D61384 <https://reviews.llvm.org/D61384> was added at rL359709 <https://reviews.llvm.org/rL359709>. I don't think we need to add a specific helper to find a splat of "1.0" through a constant pool load as is proposed in D61384 <https://reviews.llvm.org/D61384> - a simpler use of the existing isConstOrConstSplatFP() avoids the problem.


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

https://reviews.llvm.org/D61149

Files:
  llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
  llvm/test/CodeGen/X86/fdiv-combine-vec.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61149.197596.patch
Type: text/x-patch
Size: 5751 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190501/26399272/attachment-0001.bin>


More information about the llvm-commits mailing list