From a65b4d5170334e9c9544235603d1d908fd022fcd Mon Sep 17 00:00:00 2001 From: ian Date: Sat, 19 Jul 2014 22:13:27 +0000 Subject: Add dl_unwind_find_exidx() for ARM EABI, required for C++ exception handling. For statically linked apps this uses the __exidx_start/end symbols set up by the linker. For dynamically linked apps it finds the shared object that contains the given address and returns the location and size of the exidx section in that shared object. The dl_unwind_find_exidx() name is used by other BSD projects and Android, and is mentioned in clang 3.5 comments as "the BSD interface" for finding exidx data. GCC (in libgcc_s) expects the exact same API and functionality to be provided by a function named __gnu_Unwind_Find_exidx(), so we provide that with an alias ("strong reference"). Reviewed by: kib@ MFC after: 1 week --- lib/libc/arm/Symbol.map | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'lib/libc/arm/Symbol.map') diff --git a/lib/libc/arm/Symbol.map b/lib/libc/arm/Symbol.map index a58d443..cf65492 100644 --- a/lib/libc/arm/Symbol.map +++ b/lib/libc/arm/Symbol.map @@ -37,6 +37,11 @@ FBSD_1.3 { __flt_rounds; }; +FBSD_1.4 { + __gnu_Unwind_Find_exidx; + dl_unwind_find_exidx; +}; + FBSDprivate_1.0 { /* PSEUDO syscalls */ __sys_getlogin; -- cgit v1.1