]> granicus.if.org Git - llvm/commit
[x86] lower extracted fadd/fsub to horizontal vector math
authorSanjay Patel <spatel@rotateright.com>
Thu, 3 Jan 2019 23:16:19 +0000 (23:16 +0000)
committerSanjay Patel <spatel@rotateright.com>
Thu, 3 Jan 2019 23:16:19 +0000 (23:16 +0000)
commit3622c84e6f1bf3640e83b2ca97ce5e39dd59c43e
tree3eae451038f300a8c35b1f5fb8cceaf117373f0f
parent0db40de6caaadd26563457643d38e1c51de0f48e
[x86] lower extracted fadd/fsub to horizontal vector math

This would show up if we fix horizontal reductions to narrow as they go along,
but it's an improvement for size and/or Jaguar (fast-hops) independent of that.

We need to do this late to not interfere with other pattern matching of larger
horizontal sequences.

We can extend this to integer ops in a follow-up patch.

Differential Revision: https://reviews.llvm.org/D56011

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@350369 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/haddsub-undef.ll
test/CodeGen/X86/haddsub.ll