[PATCH] D153128: [AArch64][RCPC3] Add Neon intrinsics for LDAP1 and STL2

Lucas Prates via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 16 05:52:57 PDT 2023


pratlucas created this revision.
pratlucas added reviewers: tmatheson, vhscampos, dmgreen.
Herald added a subscriber: kristof.beyls.
Herald added a project: All.
pratlucas requested review of this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

This adds new intrisics to support the LDAP1 and STL1 Advanced SIMD
(Neon) instructions introduced as part of FEAT_LRCPC3.
The new intrinsics `vldap1(q)_lane`/`vstl1(q)_lane` generate IR code
similar to the existing `vld1(q)_lane/st1(q)_lane` ones, but capturing
the difference in the atomic release/acquire memory model.

The LLVM code generation changes to ensure that this instruction pair
is lowered to the correct LDAP1/STL1 instructions will be covered in a
separate commit.

Based on a patch by Sam Elliott.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D153128

Files:
  clang/include/clang/Basic/arm_neon.td
  clang/lib/CodeGen/CGBuiltin.cpp
  clang/test/CodeGen/aarch64-neon-ldst-one-rcpc3.c
  clang/utils/TableGen/NeonEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D153128.532111.patch
Type: text/x-patch
Size: 14662 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20230616/3726c778/attachment-0001.bin>


More information about the cfe-commits mailing list