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)
commitac8d01add0502f351cd55b3b96be5b95ac634e6f
treef0b45403962ce122e2e1b99231f3e3ea8cd1156a
parenta9bcf16ebc8a3dbfc4999ddca63f064c29e89f6c
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.

llvm-svn: 255246
llvm/lib/Target/PowerPC/PPCInstrVSX.td
llvm/test/CodeGen/PowerPC/p8-scalar_vector_conversions.ll
llvm/test/CodeGen/PowerPC/variable_elem_vec_extracts.ll [new file with mode: 0644]