[PATCH] [PPC64] Change doubleword vector shift instructions from intrinsics to opcodes

Kit Barton kbarton at ca.ibm.com
Wed Mar 4 11:33:02 PST 2015


Hi hfinkel, wschmidt, seurer, nemanjai,

While reviewing the changes to Clang to add builtin support for the vsld, vsrd, and vsrad instructions, it was pointed out that the builtins are generating the LLVM opcodes (shl, lshr, and ashr) not calls to the intrinsics. This patch changes the implementation of the vsld, vsrd, and vsrad instructions from from intrinsics to VXForm_1 instructions and makes them legal with P8 Altivec. It also removes the definition of the int_ppc_altivec_vsld, int_ppc_altivec_vsrd, and int_ppc_altivec_vsrad intrinsics.

http://reviews.llvm.org/D8064

Files:
  include/llvm/IR/IntrinsicsPowerPC.td
  lib/Target/PowerPC/PPCISelLowering.cpp
  lib/Target/PowerPC/PPCInstrAltivec.td
  test/CodeGen/PowerPC/vec_rotate_shift.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8064.21221.patch
Type: text/x-patch
Size: 4715 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150304/b94c2855/attachment.bin>


More information about the llvm-commits mailing list