With sse3 and when the source is a load or has multiple uses, favors movddup over...
authorEvan Cheng <evan.cheng@apple.com>
Thu, 25 Sep 2008 20:50:48 +0000 (20:50 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 25 Sep 2008 20:50:48 +0000 (20:50 +0000)
commit0b457f0c3a7e21b1fb9ac8b9f8e404e1312b6a60
tree2ba33e7e3f6ad009c22409a680fc91cb58deb29b
parentc9c6da61ac027d9818652d417907f84398288b99
With sse3 and when the source is a load or has multiple uses, favors movddup over shuffp*, pshufd, etc. Without sse3 or when the source is from a register, make use of movlhps

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56620 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
lib/Target/X86/X86ISelLowering.h
lib/Target/X86/X86InstrSSE.td
test/CodeGen/X86/vec_shuffle-22.ll [new file with mode: 0644]