[libunwind] [libunwind] fix dynamic .eh_frame registration (PR #77185)

2024-01-12 Thread via cfe-commits

https://github.com/SihangZhu updated 
https://github.com/llvm/llvm-project/pull/77185

>From ed0a694dbf7cb8e6775b53f3553f4ec7d1fdbee2 Mon Sep 17 00:00:00 2001
From: SihangZhu 
Date: Sat, 6 Jan 2024 15:43:41 +0800
Subject: [PATCH] [libunwind] fix dynamic .eh_frame registration

---
 libunwind/src/libunwind.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libunwind/src/libunwind.cpp b/libunwind/src/libunwind.cpp
index cd610377b63de8..723c8ceb5c8c94 100644
--- a/libunwind/src/libunwind.cpp
+++ b/libunwind/src/libunwind.cpp
@@ -324,7 +324,7 @@ void __unw_add_dynamic_eh_frame_section(unw_word_t 
eh_frame_start) {
   CFI_Parser::CIE_Info cieInfo;
   CFI_Parser::FDE_Info fdeInfo;
   auto p = (LocalAddressSpace::pint_t)eh_frame_start;
-  while (true) {
+  while (LocalAddressSpace::sThisAddressSpace.get32(p)) {
 if (CFI_Parser::decodeFDE(
 LocalAddressSpace::sThisAddressSpace, p, , ,
 true) == NULL) {

___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[libunwind] [libunwind] fix dynamic .eh_frame registration (PR #77185)

2024-01-10 Thread via cfe-commits

SihangZhu wrote:

@lhames Could you check again, I have fixed the implementation as  you decribed

https://github.com/llvm/llvm-project/pull/77185
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[libunwind] [libunwind] fix dynamic .eh_frame registration (PR #77185)

2024-01-09 Thread via cfe-commits

SihangZhu wrote:

> As @arichardson noted this would break the ABI.
> 
> The best solution is to fix the implementation of 
> `__unw_add_dynamic_eh_frame_section` (and 
> `__unw_remove_dynamic_eh_frame_section`) as described in [#76957 
> (comment)](https://github.com/llvm/llvm-project/issues/76957#issuecomment-1879977544).

thx for advice.

https://github.com/llvm/llvm-project/pull/77185
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits


[libunwind] [libunwind] fix dynamic .eh_frame registration (PR #77185)

2024-01-08 Thread via cfe-commits

https://github.com/SihangZhu edited 
https://github.com/llvm/llvm-project/pull/77185
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits