OSDN Git Service

[X86][SSE] Add getHopForBuildVector vector splitting
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 10 May 2019 15:46:04 +0000 (15:46 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 10 May 2019 15:46:04 +0000 (15:46 +0000)
commit1513e5ffeebd7a0da092f1d970d037b1a7a385cb
treee5137b470b950071c7f4839a0e0266796a1bfa44
parent609305365151eac90abfded2d4e5453f0d53a99e
[X86][SSE] Add getHopForBuildVector vector splitting

If we only use the lower xmm of a ymm hop, then extract the xmm's (for free), perform the xmm hop and then insert back into a ymm (for free).

Fixes some of the regressions noted in D61782

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