[PowerPC] Use xxleqv to set all one vector IMM(-1).
authorJinsong Ji <jji@us.ibm.com>
Thu, 15 Aug 2019 14:32:51 +0000 (14:32 +0000)
committerJinsong Ji <jji@us.ibm.com>
Thu, 15 Aug 2019 14:32:51 +0000 (14:32 +0000)
commit9fd81dc139027751ffe58dcc7c04ee1ff9ad0a6f
tree706522d3410255de8a42713596a2fc6f3412acc0
parent9880b5dd2178b59b5f0204f628724abf5bc41f3d
[PowerPC] Use xxleqv to set all one vector IMM(-1).

Summary:
xxspltib/vspltisb are 3 cycle PM instructions,
xxleqv is 2 cycle ALU instruction.

We should use xxleqv to set all one vectors.

Reviewers: hfinkel, nemanjai, steven.zhang

Subscribers: hiraditya, kbarton, MaskRay, shchenz, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D65529

llvm-svn: 369006
llvm/lib/Target/PowerPC/P9InstrResources.td
llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
llvm/lib/Target/PowerPC/PPCInstrInfo.td
llvm/lib/Target/PowerPC/PPCInstrVSX.td
llvm/test/CodeGen/PowerPC/build-vector-allones.ll
llvm/test/CodeGen/PowerPC/power9-moves-and-splats.ll
llvm/test/CodeGen/PowerPC/sat-add.ll
llvm/test/CodeGen/PowerPC/setcc-logic.ll
llvm/test/CodeGen/PowerPC/signbit-shift.ll
llvm/test/CodeGen/PowerPC/vec_add_sub_doubleword.ll
llvm/test/CodeGen/PowerPC/vselect-constants.ll