[PATCH] D73356: [ARM,MVE] Add intrinsics for vdupq.

Simon Tatham via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jan 24 08:04:56 PST 2020


simon_tatham created this revision.
simon_tatham added reviewers: dmgreen, MarkMurrayARM, miyuki, ostannard.
Herald added subscribers: llvm-commits, cfe-commits, hiraditya, kristof.beyls.
Herald added projects: clang, LLVM.

The unpredicated case of this is trivial: the clang codegen just makes
a vector splat of the input, and LLVM isel is already prepared to
handle that. For the predicated version, I've generated a `select`
between the same vector splat and the `inactive` input parameter, and
added new Tablegen isel rules to match that pattern into a predicated
`MVE_VDUP` instruction.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D73356

Files:
  clang/include/clang/Basic/arm_mve.td
  clang/test/CodeGen/arm-mve-intrinsics/dup.c
  llvm/lib/Target/ARM/ARMInstrMVE.td
  llvm/test/CodeGen/Thumb2/mve-intrinsics/dup.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D73356.240206.patch
Type: text/x-patch
Size: 28007 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200124/8ca8570d/attachment-0001.bin>


More information about the cfe-commits mailing list