Improve codegen for BUILD_VECTORs on ARM.
authorJames Molloy <james.molloy@arm.com>
Thu, 6 Sep 2012 09:55:02 +0000 (09:55 +0000)
committerJames Molloy <james.molloy@arm.com>
Thu, 6 Sep 2012 09:55:02 +0000 (09:55 +0000)
commitba8562af4440753ba6175ccd54d71f79f5c4f3dc
treeb3a682afcaec10c5546b6c31f0e192659dc56b66
parent486270aee6ffd2a0c3c2333a8a0091c29f037aae
Improve codegen for BUILD_VECTORs on ARM.

If we have a BUILD_VECTOR that is mostly a constant splat, it is often better to splat that constant then insertelement the non-constant lanes instead of insertelementing every lane from an undef base.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163304 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMISelLowering.cpp
test/CodeGen/ARM/vdup.ll