[PATCH] D133025: [LLVM][AArch64] Replace aarch64.sve.ld by aarch64.sve.ldN.sret

Caroline via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 31 08:04:36 PDT 2022


CarolineConcatto created this revision.
Herald added subscribers: ctetreau, hiraditya, kristof.beyls, tschuett.
Herald added a project: All.
CarolineConcatto requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

This patch removes the intrinsic aarch64.sve.ldN from tablegen in favour of
using arch64.sve.ldN.sret.

The old intrinsic is still supported, but there is a regression.
This is because we do not apply a combine in the AutoUpgrade  that used to
exist in LowerSVEStructLoad function.

Previously the aarch64.sve.ldN used LowerSVEStructLoad function to concatenate
the results from LD. This patch removes this function because the intrinsic
aarch64_sve_ld2 does not exist when lowering.

Depends on: D133023 <https://reviews.llvm.org/D133023>


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D133025

Files:
  llvm/include/llvm/IR/IntrinsicsAArch64.td
  llvm/lib/IR/AutoUpgrade.cpp
  llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
  llvm/lib/Target/AArch64/AArch64ISelLowering.h
  llvm/test/CodeGen/AArch64/sve-calling-convention-mixed.ll
  llvm/test/CodeGen/AArch64/sve-intrinsics-ldN-reg+imm-addr-mode.ll
  llvm/test/CodeGen/AArch64/sve-intrinsics-ldN-reg+reg-addr-mode.ll
  llvm/test/CodeGen/AArch64/sve-intrinsics-loads.ll
  llvm/test/CodeGen/AArch64/sve-merging-stores.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D133025.456962.patch
Type: text/x-patch
Size: 65151 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220831/a0d9f7d7/attachment-0001.bin>


More information about the llvm-commits mailing list