Home | History | Annotate | Download | only in src

Lines Matching refs:header

113   void throwException(__cxa_exception *header) {
115 header->unexpectedHandler = std::get_unexpected();
116 header->terminateHandler = std::get_terminate();
119 _Unwind_RaiseException(&header->unwindHeader);
122 call_terminate(&header->unwindHeader);
177 __cxa_exception* header = static_cast<__cxa_exception*>(thrown_exc)-1;
178 header->exceptionType = tinfo;
179 header->exceptionDestructor = dest;
181 header->unwindHeader.exception_class = __gxx_exception_class;
182 header->unwindHeader.exception_cleanup = defaultExceptionCleanupFunc;
184 throwException(header);
189 __cxa_exception* header = globals->caughtExceptions;
190 _Unwind_Exception* exception = &header->unwindHeader;
191 if (!header) {
197 header->handlerCount = -header->handlerCount; // Set rethrow flag
202 throwException(header);
208 __cxa_exception* header = reinterpret_cast<__cxa_exception*>(exception+1)-1;
218 header->handlerCount = (header->handlerCount < 0) ?
219 (-header->handlerCount+1) : (header->handlerCount+1);
221 if (header != globals->caughtExceptions) {
222 header->nextException = globals->caughtExceptions;
223 globals->caughtExceptions = header;
227 return header->adjustedPtr;
232 __cxa_exception *header = globals->caughtExceptions;
233 _Unwind_Exception* exception = &header->unwindHeader;
235 if (!header) {
245 int count = header->handlerCount;
248 globals->caughtExceptions = header->nextException;
251 globals->caughtExceptions = header->nextException;
252 __cxa_free_exception(header+1);
258 header->handlerCount = count;
262 __cxa_exception* header =
265 return header->adjustedPtr;
279 __cxa_exception* header =
281 if (__sync_sub_and_fetch(&header->referenceCount, 1) == 0)
290 __cxa_exception* header =
292 __sync_add_and_fetch(&header->referenceCount, 1);