Scalar to vector conversions using direct moves
authorNemanja Ivanovic <nemanja.i.ibm@gmail.com>
Thu, 13 Aug 2015 17:40:44 +0000 (17:40 +0000)
committerNemanja Ivanovic <nemanja.i.ibm@gmail.com>
Thu, 13 Aug 2015 17:40:44 +0000 (17:40 +0000)
commit31f6eee816354985afaa63fabf61d88271627811
treeae75d01d151fdde3a43ea5d44640d67623d0abf3
parentea56ef761a84bb8895ad74bc8cf5fb91f6c78695
Scalar to vector conversions using direct moves

This patch corresponds to review:
http://reviews.llvm.org/D11471

It improves the code generated for converting a scalar to a vector value. With
direct moves from GPRs to VSRs, we no longer require expensive stack operations
for this. Subsequent patches will handle the reverse case and more general
operations between vectors and their scalar elements.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244921 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCISelLowering.cpp
lib/Target/PowerPC/PPCInstrVSX.td
lib/Target/PowerPC/PPCVSXCopy.cpp
test/CodeGen/PowerPC/fp-int-conversions-direct-moves.ll
test/CodeGen/PowerPC/p8-scalar_vector_conversions.ll [new file with mode: 0644]
test/CodeGen/PowerPC/vsx.ll
test/CodeGen/PowerPC/vsx_scalar_ld_st.ll
test/MC/Disassembler/PowerPC/vsx.txt
test/MC/PowerPC/vsx.s