[llvm] langref updates for aarch64 trampoline (PR #139740)
Eli Friedman via llvm-commits
llvm-commits at lists.llvm.org
Wed May 14 16:01:35 PDT 2025
================
@@ -410,8 +410,9 @@ added in the future:
calling convention: on most platforms, they are not preserved and need to
be saved by the caller, but on Windows, xmm6-xmm15 are preserved.
- - On AArch64 the callee preserve all general purpose registers, except X0-X8
- and X16-X18.
+ - On AArch64 the callee preserve all general purpose registers, except
+ X0-X8 and X16-X18. Using this calling convention with nest is forbidden
+ and may crash llvm.
----------------
efriedma-quic wrote:
I assumed everyone was aware of LLVMContext::diagnose... I did mention it in the discussion (although not by name).
For documentation, that doesn't seem like it's quite the right section of the manual; it's describing generic "error handling", not the rules specific to LLVM passes. We probably should have a description somewhere, though.
I think the reason diagnose() exits by default is so you don't accidentally forget to write a handler, and then continue processing bogus output. In practice, you almost always want one.
https://github.com/llvm/llvm-project/pull/139740
More information about the llvm-commits
mailing list