This patch removes the intrinsic aarch64.sve.ldN from tablegen in favour of
using arch64.sve.ldN.sret.
Depends on: D133023
Paths
| Differential D133025
[LLVM][AArch64] Replace aarch64.sve.ldN by aarch64.sve.ldN.sret ClosedPublic Authored by CarolineConcatto on Aug 31 2022, 8:04 AM.
Details Summary This patch removes the intrinsic aarch64.sve.ldN from tablegen in favour of Depends on: D133023
Diff Detail
Event TimelineCarolineConcatto added a parent revision: D133023: [AArch64][NFC] Correctly rename mangling name for ldN.sret.Aug 31 2022, 8:05 AM CarolineConcatto retitled this revision from [LLVM][AArch64] Replace aarch64.sve.ld by aarch64.sve.ldN.sret to [LLVM][AArch64] Replace aarch64.sve.ldN by aarch64.sve.ldN.sret.Aug 31 2022, 8:13 AM
Comment Actions
from 0 to the index variable I.
in llvm/test/CodeGen/AArch64 Comment Actions Replace .Default(Intrinsic::not_intrinsic); by .Default(0); in line 3886 in AutoUpgrade.cpp
This revision is now accepted and ready to land.Sep 14 2022, 1:55 PM Closed by commit rGd32b8fdbdb4b: [LLVM][AArch64] Replace aarch64.sve.ld by aarch64.sve.ldN.sret (authored by CarolineConcatto). · Explain WhySep 20 2022, 5:16 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 461539 llvm/include/llvm/IR/IntrinsicsAArch64.td
llvm/lib/IR/AutoUpgrade.cpp
llvm/lib/Target/AArch64/AArch64ISelLowering.h
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/test/Bitcode/upgrade-aarch64-sve-intrinsics.ll
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
|
Are you sure that the type mangling has been guaranteed at this point? Because the following IR without the type suffix also compiles:
I assume you'er doing it to avoid it also matching the .sret case, so maybe you can test for either .nxv[0-9] or $.