[llvm] [AArch64] SME implementation for agnostic-ZA functions (PR #120150)

Paul Walker via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 23 04:05:45 PST 2024


================
@@ -261,7 +261,13 @@ bool AArch64TTIImpl::areInlineCompatible(const Function *Caller,
 
   if (CallerAttrs.requiresLazySave(CalleeAttrs) ||
       CallerAttrs.requiresSMChange(CalleeAttrs) ||
-      CallerAttrs.requiresPreservingZT0(CalleeAttrs)) {
+      CallerAttrs.requiresPreservingZT0(CalleeAttrs) ||
+      CallerAttrs.requiresPreservingAllZAState(CalleeAttrs)) {
+    if (hasPossibleIncompatibleOps(Callee))
+      return false;
+  }
+
+  if (CalleeAttrs.hasAgnosticZAInterface()) {
----------------
paulwalker-arm wrote:

Are there tests to cover these changes?

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


More information about the llvm-commits mailing list