llvm-project
96d55678 - [AArch64][SME] Support agnostic ZA functions in the MachineSMEABIPass (#149064)

Commit
139 days ago
[AArch64][SME] Support agnostic ZA functions in the MachineSMEABIPass (#149064) This extends the MachineSMEABIPass to handle agnostic ZA functions. This case is currently handled like shared ZA functions, but we don't require ZA state to be reloaded before agnostic ZA calls. Note: This patch does not yet fully handle agnostic ZA functions that can catch exceptions. E.g.: ``` __arm_agnostic("sme_za_state") void try_catch_agnostic_za_callee() { try { agnostic_za_call(); } catch(...) { noexcept_agnostic_za_call(); } } ``` As in this case, we won't commit a ZA save before the `agnostic_za_call()`, which would be needed to restore ZA in the catch block. This will be handled in a later patch.
Author
Parents
Loading