1 2005-02-18 Richard Henderson <rth@redhat.com>
4 * config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
5 * libsupc++/eh_catch.cc (__cxa_get_exception_ptr): New.
6 * libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.
8 --- libstdc++-v3/config/linker-map.gnu (revision 94498)
9 +++ libstdc++-v3/config/linker-map.gnu (revision 95705)
10 @@ -406,3 +410,9 @@ CXXABI_1.3 {
17 + __cxa_get_exception_ptr;
20 --- libstdc++-v3/libsupc++/unwind-cxx.h (revision 94498)
21 +++ libstdc++-v3/libsupc++/unwind-cxx.h (revision 95705)
22 @@ -107,6 +107,7 @@ extern "C" void __cxa_throw (void *throw
23 __attribute__((noreturn));
25 // Used to implement exception handlers.
26 +extern "C" void *__cxa_get_exception_ptr (void *) throw();
27 extern "C" void *__cxa_begin_catch (void *) throw();
28 extern "C" void __cxa_end_catch ();
29 extern "C" void __cxa_rethrow () __attribute__((noreturn));
30 --- libstdc++-v3/libsupc++/eh_catch.cc (revision 94498)
31 +++ libstdc++-v3/libsupc++/eh_catch.cc (revision 95705)
34 using namespace __cxxabiv1;
37 +__cxxabiv1::__cxa_get_exception_ptr(void *exc_obj_in) throw()
39 + _Unwind_Exception *exceptionObject
40 + = reinterpret_cast <_Unwind_Exception *>(exc_obj_in);
41 + __cxa_exception *header = __get_exception_header_from_ue (exceptionObject);
43 + return header->adjustedPtr;
47 __cxxabiv1::__cxa_begin_catch (void *exc_obj_in) throw()