================ @@ -3032,6 +2983,162 @@ int UnwindCursor<A, R>::stepThroughSigReturn(Registers_s390x &) { #endif // defined(_LIBUNWIND_CHECK_LINUX_SIGRETURN) && // defined(_LIBUNWIND_TARGET_S390X) +#if defined(_LIBUNWIND_CHECK_HAIKU_SIGRETURN) + +#if defined(B_HAIKU_32_BIT) +typedef Elf32_Sym elf_sym; +#define ELF_ST_TYPE ELF32_ST_TYPE +#elif defined(B_HAIKU_64_BIT) +typedef Elf64_Sym elf_sym; +#define ELF_ST_TYPE ELF64_ST_TYPE +#endif + +// Private syscall declared as a weak symbol to prevent ABI breaks. ---------------- trungnt2910 wrote:
> If this is getting upstreamed we should really export this symbol not as a > syscall so we can avoid ABI breaks. Just like in the [GDB port](https://www.haiku-os.org/blog/trungnt2910/2024-07-28_gsoc_2024_debugging_progress_2/#private-syscalls), if the syscall disappears the function will silently fail, and other normal unwinding can still happen as usual. https://github.com/llvm/llvm-project/pull/135367 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits