[llvm] [AArch64][SME] Handle SME state around TLS-descriptor calls (PR #155608)
Sander de Smalen via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 3 13:50:22 PST 2025
================
@@ -162,6 +162,12 @@ getZAStateBeforeInst(const TargetRegisterInfo &TRI, MachineInstr &MI,
if (MI.getOpcode() == AArch64::RequiresZASavePseudo)
return {ZAState::LOCAL_SAVED, std::prev(InsertPt)};
+ // TLS-descriptor calls don't use the standard call lowering, so handle them
+ // as a special case here. Assume a private ZA interface.
+ if (MI.getOpcode() == AArch64::TLSDESC_CALLSEQ ||
+ MI.getOpcode() == AArch64::TLSDESC_AUTH_CALLSEQ)
----------------
sdesmalen-arm wrote:
Rather than checking these instructions here, should SelectionDAG insert a `AArch64::RequiresZASavePseudo` before the call?
https://github.com/llvm/llvm-project/pull/155608
More information about the llvm-commits
mailing list