This is an archive of the discontinued LLVM Phabricator instance.

[Clang][AArch64][SME] Add intrinsics for ZA array load/store (LDR/STR)
ClosedPublic

Authored by bryanpkc on Sep 26 2022, 2:47 PM.

Details

Summary

This patch adds support for the following SME ACLE intrinsics (as defined
in https://arm-software.github.io/acle/main/acle.html):

  • svldr_vnum_za
  • svstr_vnum_za

Co-authored-by: Sagar Kulkarni <sagar.kulkarni1@huawei.com>

Diff Detail

Event Timeline

Herald added a project: Restricted Project. · View Herald TranscriptSep 26 2022, 2:47 PM
sagarkulkarni19 requested review of this revision.Sep 26 2022, 2:47 PM
bryanpkc commandeered this revision.Jan 21 2023, 2:18 PM
bryanpkc added a reviewer: sagarkulkarni19.
bryanpkc updated this revision to Diff 492679.Jan 27 2023, 2:43 AM
bryanpkc retitled this revision from [Clang][AArch64] Add SME ldr and str intrinsic to [Clang][AArch64][SME] Add intrinsics for ZA array load/store (LDR/STR).
bryanpkc edited the summary of this revision. (Show Details)

Rebased and cleaned up the patch.

bryanpkc updated this revision to Diff 526361.May 28 2023, 8:30 PM
Matt added a subscriber: Matt.Jun 5 2023, 12:24 PM
bryanpkc updated this revision to Diff 531949.Jun 15 2023, 5:14 PM

Instead of defining new type flags, EmitAArch64SMEBuiltinExpr is updated to switch on BuiltinID, as suggested by @sdesmalen.

bryanpkc updated this revision to Diff 531953.Jun 15 2023, 5:25 PM

Also added SME attributes to the tests.

bryanpkc updated this revision to Diff 540839.Jul 16 2023, 5:40 PM

Removed the attribute macro from tests, as @sdesmalen suggested.

sdesmalen added inline comments.Jul 17 2023, 6:43 AM
clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
24

This is missing an add of 15 to %slice_base.

bryanpkc marked an inline comment as done.Jul 17 2023, 10:41 AM
bryanpkc added inline comments.
clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
24

Thanks for catching that. Fixed.

bryanpkc updated this revision to Diff 541132.Jul 17 2023, 10:43 AM
bryanpkc marked an inline comment as done.
sdesmalen accepted this revision.Jul 17 2023, 12:18 PM

Thanks for the quick fix!

This revision is now accepted and ready to land.Jul 17 2023, 12:18 PM
This revision was landed with ongoing or failed builds.Jul 20 2023, 2:57 AM
This revision was automatically updated to reflect the committed changes.