Bitcasts between FP and INT values using direct moves
authorNemanja Ivanovic <nemanja.i.ibm@gmail.com>
Thu, 10 Dec 2015 13:35:28 +0000 (13:35 +0000)
committerNemanja Ivanovic <nemanja.i.ibm@gmail.com>
Thu, 10 Dec 2015 13:35:28 +0000 (13:35 +0000)
commit1c23594d2c3887bbb714a55a51770524f7744293
tree8eebb0cf2b03fb7c6279b4ecb971f0324b2b9e80
parent7db3980c5f97eb21bdcb58955ec7ed5e67ceda55
Bitcasts between FP and INT values using direct moves

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

LLVM IR frequently contains bitcast operations between floating point and
integer values of the same width. Doing this through memory operations is
quite expensive on PPC. This patch allows the use of direct register moves
between FPRs and GPRs for lowering bitcasts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@255246 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCInstrVSX.td
test/CodeGen/PowerPC/p8-scalar_vector_conversions.ll
test/CodeGen/PowerPC/variable_elem_vec_extracts.ll [new file with mode: 0644]