diff options
author | Benjamin Maxwell <benjamin.maxwell@arm.com> | 2025-09-09 11:35:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-09-09 10:35:12 +0000 |
commit | 96d556784ed3ec7a8a6c377b44afb5dfa49229e6 (patch) | |
tree | eb0b980c5f4f7a689e6ebc677eea5041a46c576a /clang-tools-extra/unittests | |
parent | 4546522aa34c1f56a22e35cb411d4e18481d1854 (diff) | |
download | llvm-main.zip llvm-main.tar.gz llvm-main.tar.bz2 |
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.
Diffstat (limited to 'clang-tools-extra/unittests')
0 files changed, 0 insertions, 0 deletions