================
@@ -200,7 +200,9 @@ class SMECallAttrs {
}
bool requiresZASave() const {
- return requiresLazySave() || requiresPreservingAllZAState();
+ return requiresLazySave() || requiresPreservingAllZAState() ||
+ (caller().hasZAState() && callee().hasSharedZAInterface() &&
+ !callee().sharesZA());
----------------
MacDue wrote:
This change looks a bit odd. Codegen-wise I don't think we really support this
case, if you share have a shared ZA-interface you must share ZA (and we don't
emit a save). I think this case would require a non-lazy save to actually
support (see https://godbolt.org/z/a516c6Yrq).
https://github.com/llvm/llvm-project/pull/223393
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits