• Home
  • Raw
  • Download

Lines Matching refs:exception_header

54 thrown_object_from_cxa_exception(__cxa_exception* exception_header)  in thrown_object_from_cxa_exception()  argument
56 return static_cast<void*>(exception_header + 1); in thrown_object_from_cxa_exception()
136 …__cxa_exception* exception_header = cxa_exception_from_exception_unwind_exception(unwind_exception… in exception_cleanup_func() local
138 std::__terminate(exception_header->terminateHandler); in exception_cleanup_func()
144 static _LIBCXXABI_NORETURN void failed_throw(__cxa_exception* exception_header) { in failed_throw() argument
152 (void) __cxa_begin_catch(&exception_header->unwindHeader); in failed_throw()
153 std::__terminate(exception_header->terminateHandler); in failed_throw()
195 __cxa_exception *exception_header = in __cxa_allocate_exception() local
197 std::memset(exception_header, 0, actual_size); in __cxa_allocate_exception()
198 return thrown_object_from_cxa_exception(exception_header); in __cxa_allocate_exception()
261 __cxa_exception* exception_header = cxa_exception_from_thrown_object(thrown_object); in __cxa_throw() local
263 exception_header->unexpectedHandler = std::get_unexpected(); in __cxa_throw()
264 exception_header->terminateHandler = std::get_terminate(); in __cxa_throw()
265 exception_header->exceptionType = tinfo; in __cxa_throw()
266 exception_header->exceptionDestructor = dest; in __cxa_throw()
267 setOurExceptionClass(&exception_header->unwindHeader); in __cxa_throw()
268exception_header->referenceCount = 1; // This is a newly allocated exception, no need for thread … in __cxa_throw()
271 exception_header->unwindHeader.exception_cleanup = exception_cleanup_func; in __cxa_throw()
279 _Unwind_SjLj_RaiseException(&exception_header->unwindHeader); in __cxa_throw()
281 _Unwind_RaiseException(&exception_header->unwindHeader); in __cxa_throw()
285 failed_throw(exception_header); in __cxa_throw()
315 __cxa_exception* exception_header = in __cxa_begin_cleanup() local
320 if (0 == exception_header->propagationCount) in __cxa_begin_cleanup()
322 exception_header->nextPropagatingException = globals->propagatingExceptions; in __cxa_begin_cleanup()
323 globals->propagatingExceptions = exception_header; in __cxa_begin_cleanup()
325 ++exception_header->propagationCount; in __cxa_begin_cleanup()
333 globals->propagatingExceptions = exception_header; in __cxa_begin_cleanup()
356 __cxa_exception* exception_header = globals->propagatingExceptions; in __cxa_end_cleanup_impl() local
357 if (NULL == exception_header) in __cxa_end_cleanup_impl()
364 if (__isOurExceptionClass(&exception_header->unwindHeader)) in __cxa_end_cleanup_impl()
366 --exception_header->propagationCount; in __cxa_end_cleanup_impl()
367 if (0 == exception_header->propagationCount) in __cxa_end_cleanup_impl()
369 globals->propagatingExceptions = exception_header->nextPropagatingException; in __cxa_end_cleanup_impl()
370 exception_header->nextPropagatingException = NULL; in __cxa_end_cleanup_impl()
377 return &exception_header->unwindHeader; in __cxa_end_cleanup_impl()
444 __cxa_exception* exception_header = in __cxa_begin_catch() local
452 exception_header->handlerCount = exception_header->handlerCount < 0 ? in __cxa_begin_catch()
453 -exception_header->handlerCount + 1 : exception_header->handlerCount + 1; in __cxa_begin_catch()
456 if (exception_header != globals->caughtExceptions) in __cxa_begin_catch()
458 exception_header->nextException = globals->caughtExceptions; in __cxa_begin_catch()
459 globals->caughtExceptions = exception_header; in __cxa_begin_catch()
463 return reinterpret_cast<void*>(exception_header->unwindHeader.barrier_cache.bitpattern[0]); in __cxa_begin_catch()
465 return exception_header->adjustedPtr; in __cxa_begin_catch()
473 globals->caughtExceptions = exception_header; in __cxa_begin_catch()
510 __cxa_exception* exception_header = globals->caughtExceptions; in __cxa_end_catch() local
514 if (NULL != exception_header) in __cxa_end_catch()
516 bool native_exception = __isOurExceptionClass(&exception_header->unwindHeader); in __cxa_end_catch()
520 if (exception_header->handlerCount < 0) in __cxa_end_catch()
523 if (0 == incrementHandlerCount(exception_header)) in __cxa_end_catch()
526 globals->caughtExceptions = exception_header->nextException; in __cxa_end_catch()
536 if (0 == decrementHandlerCount(exception_header)) in __cxa_end_catch()
539 globals->caughtExceptions = exception_header->nextException; in __cxa_end_catch()
542 if (isDependentException(&exception_header->unwindHeader)) in __cxa_end_catch()
546 reinterpret_cast<__cxa_dependent_exception*>(exception_header); in __cxa_end_catch()
547 exception_header = in __cxa_end_catch()
553 … __cxa_decrement_exception_refcount(thrown_object_from_cxa_exception(exception_header)); in __cxa_end_catch()
578 __cxa_exception *exception_header = globals->caughtExceptions; in __cxa_current_exception_type() local
579 if (NULL == exception_header) in __cxa_current_exception_type()
581 if (!__isOurExceptionClass(&exception_header->unwindHeader)) in __cxa_current_exception_type()
583 return exception_header->exceptionType; in __cxa_current_exception_type()
600 __cxa_exception* exception_header = globals->caughtExceptions; in __cxa_rethrow() local
601 if (NULL == exception_header) in __cxa_rethrow()
603 bool native_exception = __isOurExceptionClass(&exception_header->unwindHeader); in __cxa_rethrow()
607 exception_header->handlerCount = -exception_header->handlerCount; in __cxa_rethrow()
620 _Unwind_SjLj_RaiseException(&exception_header->unwindHeader); in __cxa_rethrow()
622 _Unwind_RaiseException(&exception_header->unwindHeader); in __cxa_rethrow()
629 __cxa_begin_catch(&exception_header->unwindHeader); in __cxa_rethrow()
631 std::__terminate(exception_header->terminateHandler); in __cxa_rethrow()
647 __cxa_exception* exception_header = cxa_exception_from_thrown_object(thrown_object); in __cxa_increment_exception_refcount() local
648 std::__libcpp_atomic_add(&exception_header->referenceCount, size_t(1)); in __cxa_increment_exception_refcount()
664 __cxa_exception* exception_header = cxa_exception_from_thrown_object(thrown_object); in __cxa_decrement_exception_refcount() local
665 if (std::__libcpp_atomic_add(&exception_header->referenceCount, size_t(-1)) == 0) in __cxa_decrement_exception_refcount()
667 if (NULL != exception_header->exceptionDestructor) in __cxa_decrement_exception_refcount()
668 exception_header->exceptionDestructor(thrown_object); in __cxa_decrement_exception_refcount()
689 __cxa_exception* exception_header = globals->caughtExceptions; in __cxa_current_primary_exception() local
690 if (NULL == exception_header) in __cxa_current_primary_exception()
692 if (!__isOurExceptionClass(&exception_header->unwindHeader)) in __cxa_current_primary_exception()
694 if (isDependentException(&exception_header->unwindHeader)) { in __cxa_current_primary_exception()
696 reinterpret_cast<__cxa_dependent_exception*>(exception_header); in __cxa_current_primary_exception()
697 exception_header = cxa_exception_from_thrown_object(dep_exception_header->primaryException); in __cxa_current_primary_exception()
699 void* thrown_object = thrown_object_from_cxa_exception(exception_header); in __cxa_current_primary_exception()
733 __cxa_exception* exception_header = cxa_exception_from_thrown_object(thrown_object); in __cxa_rethrow_primary_exception() local
738 dep_exception_header->exceptionType = exception_header->exceptionType; in __cxa_rethrow_primary_exception()