[PATCH] D101167: [AArch64][SVE] Convert svdup(vec, SV_VL1, elm) to insertelement(vec, elm, 0)

Bradley Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 23 07:37:38 PDT 2021


bsmith created this revision.
bsmith added reviewers: paulwalker-arm, peterwaller-arm, joechrisellis, kmclaughlin.
Herald added subscribers: tmatheson, psnobl, hiraditya, kristof.beyls, tschuett.
Herald added a reviewer: efriedma.
bsmith requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

By converting the SVE intrinsic to a normal LLVM insertelement we give
the code generator a better chance to remove transitions between GPRs
and VPRs

This is done in SVEIntrinsicsOpts rather than InstCombine since we want
to perform this after any sve.convert.{to,from}.svbool intrinsics have
been optimized.

Co-authored-by: Paul Walker <paul.walker at arm.com>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D101167

Files:
  llvm/lib/Target/AArch64/SVEIntrinsicOpts.cpp
  llvm/test/CodeGen/AArch64/sve-intrinsic-opts-dup.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D101167.340029.patch
Type: text/x-patch
Size: 5171 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210423/a290ca51/attachment.bin>


More information about the llvm-commits mailing list