34#define _UNWIND_CXX_H 1
46typedef signed _Unwind_Sword
__attribute__((__mode__(__word__)));
47typedef unsigned _Unwind_Word
__attribute__((__mode__(__word__)));
48typedef unsigned _Unwind_Ptr
__attribute__((__mode__(__pointer__)));
49#if !defined __IPHONE_16_4 || __IPHONE_OS_VERSION_MAX_ALLOWED < __IPHONE_16_4
50typedef unsigned _Unwind_Exception_Class
__attribute__((__mode__(__DI__)));
52typedef unsigned _Unwind_Internal_Ptr
__attribute__((__mode__(__pointer__)));
54#pragma GCC visibility push(default)
103#ifdef __ARM_EABI_UNWINDER__
108 int propagationCount;
134#ifdef __ARM_EABI_UNWINDER__
153#pragma GCC visibility push(hidden)
156#pragma GCC visibility pop
160 std::type_info *tinfo,
161 void (*dest) (
void *))
182#ifdef __ARM_EABI_UNWINDER__
187 ctm_succeeded_with_ptr_to_base = 2
188} __cxa_type_match_result;
189extern "C" bool __cxa_type_match(_Unwind_Exception*,
const std::type_info*,
191extern "C" void __cxa_begin_cleanup (_Unwind_Exception*);
192extern "C" void __cxa_end_cleanup (
void);
198static inline __cxa_exception *
205static inline __cxa_exception *
211#ifdef __ARM_EABI_UNWINDER__
241 return (
void*)eo->barrier_cache.bitpattern[0];
246= ((((((((_Unwind_Exception_Class)
'G'
247 << 8 | (_Unwind_Exception_Class)
'N')
248 << 8 | (_Unwind_Exception_Class)
'U')
249 << 8 | (_Unwind_Exception_Class)
'C')
250 << 8 | (_Unwind_Exception_Class)
'C')
251 << 8 | (_Unwind_Exception_Class)
'+')
252 << 8 | (_Unwind_Exception_Class)
'+')
253 << 8 | (_Unwind_Exception_Class)
'\0');
261#define __GXX_INIT_EXCEPTION_CLASS(c) c = __gxx_exception_class
265 (
int, _Unwind_Action, _Unwind_Exception_Class,
266 struct _Unwind_Exception *,
struct _Unwind_Context *);
270 (
int, _Unwind_Action, _Unwind_Exception_Class,
271 struct _Unwind_Exception *,
struct _Unwind_Context *);
277 return header->adjustedPtr;
283#pragma GCC visibility pop
constexpr sal_Int8 header[]
void __cxa_rethrow() __attribute__((noreturn))
_Unwind_Reason_Code __gxx_personality_sj0(int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, struct _Unwind_Context *)
void __cxa_call_terminate(void *) __attribute__((noreturn))
void __cxa_throw(void *thrown_exception, std::type_info *tinfo, void(*dest)(void *)) __attribute__((noreturn))
__cxa_eh_globals * __cxa_get_globals()
static bool __is_gxx_exception_class(_Unwind_Exception_Class c)
void * __cxa_allocate_dependent_exception()
void __cxa_call_unexpected(void *) __attribute__((noreturn))
void * __cxa_allocate_exception(size_t thrown_size)
const _Unwind_Exception_Class __gxx_exception_class
static __cxa_exception * __get_exception_header_from_obj(void *ptr)
static __cxa_exception * __get_exception_header_from_ue(_Unwind_Exception *exc)
__cxa_eh_globals * __cxa_get_globals_fast()
static void * __gxx_caught_object(_Unwind_Exception *eo)
void __cxa_free_exception(void *thrown_exception)
void __cxa_free_dependent_exception(void *thrown_exception)
void * __cxa_get_exception_ptr(void *)
_Unwind_Reason_Code __gxx_personality_v0(int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *, struct _Unwind_Context *)
void * __cxa_begin_catch(void *)
unsigned int uncaughtExceptions
__cxa_exception * caughtExceptions
const unsigned char * languageSpecificData
void(* exceptionDestructor)(void *)
__cxa_exception * nextException
void(* unexpectedHandler)()
const unsigned char * actionRecord
std::terminate_handler terminateHandler
std::type_info * exceptionType
_Unwind_Exception unwindHeader
#define __GXX_INIT_EXCEPTION_CLASS(c)
unsigned _Unwind_Word __attribute__((__mode__(__word__)))