[clang] [llvm] SystemZ: Add support for __builtin_setjmp and __builtin_longjmp. (PR #119257)
Ulrich Weigand via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 10 08:02:14 PST 2024
================
@@ -374,10 +374,11 @@ overall functioning of this intrinsic is compatible with the GCC
to interoperate.
The single parameter is a pointer to a five word buffer in which the calling
-context is saved. The front end places the frame pointer in the first word, and
-the target implementation of this intrinsic should place the destination address
-for a `llvm.eh.sjlj.longjmp`_ in the second word. The following three words are
-available for use in a target-specific manner.
+context is saved. The format and contents of the buffer are target-specific.
+On certain targets (ARM, PowerPC, VE, X86), the front end places the
+frame pointer in the first word and the stack pointer in the third word,
+while the target implementation of this intrinsic fills in the remaining
+words. On other targets (SystemZ), saving the calling context to the buffer is left completely to the target implementation.
----------------
uweigand wrote:
This line is very long, can you add a line break?
https://github.com/llvm/llvm-project/pull/119257
More information about the llvm-commits
mailing list