1/* List of types and symbols in libpthread examined by libthread_db. 2 Copyright (C) 2003, 2006, 2007 Free Software Foundation, Inc. 3 This file is part of the GNU C Library. 4 5 The GNU C Library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 of the License, or (at your option) any later version. 9 10 The GNU C Library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with the GNU C Library; if not, see 17 <http://www.gnu.org/licenses/>. */ 18 19#ifndef DB_STRUCT_ARRAY_FIELD 20# define DB_STRUCT_ARRAY_FIELD(type, field) DB_STRUCT_FIELD (type, field) 21# define DB_ARRAY_VARIABLE(name) DB_VARIABLE (name) 22# define STRUCTS_DEF_DEFAULTS 1 23#endif 24 25DB_STRUCT (pthread) 26DB_STRUCT_FIELD (pthread, list) 27DB_STRUCT_FIELD (pthread, report_events) 28DB_STRUCT_FIELD (pthread, tid) 29DB_STRUCT_FIELD (pthread, start_routine) 30DB_STRUCT_FIELD (pthread, cancelhandling) 31DB_STRUCT_FIELD (pthread, schedpolicy) 32DB_STRUCT_FIELD (pthread, schedparam_sched_priority) 33DB_STRUCT_FIELD (pthread, specific) 34DB_STRUCT_FIELD (pthread, eventbuf) 35DB_STRUCT_FIELD (pthread, eventbuf_eventmask) 36DB_STRUCT_ARRAY_FIELD (pthread, eventbuf_eventmask_event_bits) 37DB_STRUCT_FIELD (pthread, nextevent) 38 39DB_STRUCT (list_t) 40DB_STRUCT_FIELD (list_t, next) 41DB_STRUCT_FIELD (list_t, prev) 42 43DB_STRUCT (td_thr_events_t) 44DB_STRUCT_ARRAY_FIELD (td_thr_events_t, event_bits) 45 46DB_STRUCT (td_eventbuf_t) 47DB_STRUCT_FIELD (td_eventbuf_t, eventnum) 48DB_STRUCT_FIELD (td_eventbuf_t, eventdata) 49 50DB_SYMBOL (stack_used) 51DB_SYMBOL (__stack_user) 52DB_SYMBOL (nptl_version) 53DB_FUNCTION (__nptl_create_event) 54DB_FUNCTION (__nptl_death_event) 55DB_SYMBOL (__nptl_threads_events) 56DB_VARIABLE (__nptl_nthreads) 57DB_VARIABLE (__nptl_last_event) 58DB_VARIABLE (__nptl_initial_report_events) 59 60DB_ARRAY_VARIABLE (__pthread_keys) 61DB_STRUCT (pthread_key_struct) 62DB_STRUCT_FIELD (pthread_key_struct, seq) 63DB_STRUCT_FIELD (pthread_key_struct, destr) 64 65DB_STRUCT (pthread_key_data) 66DB_STRUCT_FIELD (pthread_key_data, seq) 67DB_STRUCT_FIELD (pthread_key_data, data) 68DB_STRUCT (pthread_key_data_level2) 69DB_STRUCT_ARRAY_FIELD (pthread_key_data_level2, data) 70 71#if USE_TLS 72DB_STRUCT_FIELD (link_map, l_tls_modid) 73#endif 74 75#if !defined IS_IN_libpthread || USE_TLS 76DB_STRUCT_ARRAY_FIELD (dtv, dtv) 77# define pointer_val pointer.val /* Field of anonymous struct in dtv_t. */ 78DB_STRUCT_FIELD (dtv_t, pointer_val) 79#endif 80#if !defined IS_IN_libpthread || (defined TLS_TCB_AT_TP && TLS_TCB_AT_TP) 81DB_STRUCT_FIELD (pthread, dtvp) 82#endif 83 84#ifdef STRUCTS_DEF_DEFAULTS 85# undef DB_STRUCT_ARRAY_FIELD 86# undef DB_ARRAY_VARIABLE 87# undef STRUCTS_DEF_DEFAULTS 88#endif 89