[llvm] [AArch64][SME] Allow memory operations lowering to custom SME functions. (PR #79263)

Sander de Smalen via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 26 00:24:24 PST 2024


================
@@ -7659,8 +7659,14 @@ AArch64TargetLowering::LowerCall(CallLoweringInfo &CLI,
   SMEAttrs CalleeAttrs, CallerAttrs(MF.getFunction());
   if (CLI.CB)
     CalleeAttrs = SMEAttrs(*CLI.CB);
-  else if (auto *ES = dyn_cast<ExternalSymbolSDNode>(CLI.Callee))
-    CalleeAttrs = SMEAttrs(ES->getSymbol());
+  else if (auto *ES = dyn_cast<ExternalSymbolSDNode>(CLI.Callee)) {
+    if (StringRef(ES->getSymbol()) == StringRef("__arm_sc_memcpy")) {
----------------
sdesmalen-arm wrote:

This is missing `__arm_sc_memmove` and `__arm_sc_memset` ?

https://github.com/llvm/llvm-project/pull/79263


More information about the llvm-commits mailing list