[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
Mon Feb 26 02:55:30 PST 2024


================
@@ -0,0 +1,552 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme2 -verify-machineinstrs < %s | FileCheck %s -check-prefixes=CHECK
+; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sme2 -verify-machineinstrs -aarch64-enable-sme-mops=false < %s | FileCheck %s -check-prefixes=NO_SME_MOPS
+
+ at dst = global [512 x i8] zeroinitializer, align 1
+ at src = global [512 x i8] zeroinitializer, align 1
+
+define void @sc_memcpy(i64 noundef %n) "aarch64_pstate_sm_compatible" {
----------------
sdesmalen-arm wrote:

nit:
rather than having `{streaming, streaming-compatible, locally-streaming}  x {memcpy, memset, memmove}` combinations, can you do `{streaming} x {memcpy, memset, memmove} + {streaming-compatible, locally-streaming} x {memcpy}` ?

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


More information about the llvm-commits mailing list