2002-12-12 10:17:41 +01:00
|
|
|
#include "internal.h"
|
2002-12-03 09:19:58 +01:00
|
|
|
|
2002-12-12 10:17:41 +01:00
|
|
|
pthread_mutex_t _U_dyn_info_list_lock = PTHREAD_MUTEX_INITIALIZER;
|
2002-12-03 09:19:58 +01:00
|
|
|
|
2002-12-12 10:17:41 +01:00
|
|
|
void
|
2002-12-03 09:19:58 +01:00
|
|
|
_U_dyn_register (unw_dyn_info_t *di)
|
|
|
|
{
|
2002-12-12 10:17:41 +01:00
|
|
|
mutex_lock (&_U_dyn_info_list_lock);
|
2002-12-03 09:19:58 +01:00
|
|
|
{
|
|
|
|
++_U_dyn_info_list.generation;
|
2002-12-12 10:17:41 +01:00
|
|
|
|
2002-12-03 09:19:58 +01:00
|
|
|
di->next = _U_dyn_info_list.first;
|
2002-12-12 10:17:41 +01:00
|
|
|
di->prev = NULL;
|
|
|
|
if (di->next)
|
|
|
|
di->next->prev = di;
|
2002-12-03 09:19:58 +01:00
|
|
|
_U_dyn_info_list.first = di;
|
|
|
|
}
|
2002-12-12 10:17:41 +01:00
|
|
|
mutex_unlock (&_U_dyn_info_list_lock);
|
2002-12-03 09:19:58 +01:00
|
|
|
}
|