2004-03-12 Roland McGrath <roland@redhat.com>
* db_info.c [TLS_DTV_AT_TP && TLS_TP_OFFSET > 0] (_thread_db_pthread_dtvp): Define differently for this case (PowerPC).
This commit is contained in:
parent
de079fee8c
commit
d6f53c6f3e
|
@ -1,7 +1,7 @@
|
|||
/* This file is included by pthread_create.c to define in libpthread
|
||||
all the magic symbols required by libthread_db.
|
||||
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
Copyright (C) 2003, 2004 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
|
@ -53,6 +53,15 @@ typedef struct link_map link_map;
|
|||
|
||||
#if TLS_TCB_AT_TP
|
||||
# define dtvp header.dtv
|
||||
#elif TLS_DTV_AT_TP && TLS_TP_OFFSET > 0
|
||||
/* Special case hack. Really this #if should be TLS_TCB_SIZE == 0, but
|
||||
when untrue it's a sizeof expression, and that wouldn't fly. In this
|
||||
flavor (PowerPC), there is no TCB containing the DTV at the TP, but
|
||||
actually the TCB lies behind the TP, i.e. at the very end of the area
|
||||
covered by TLS_PRE_TCB_SIZE. */
|
||||
DESC (_thread_db_pthread_dtvp,
|
||||
TLS_PRE_TCB_SIZE - sizeof (tcbhead_t) + offsetof (tcbhead_t, dtv),
|
||||
union dtv)
|
||||
#elif TLS_DTV_AT_TP
|
||||
/* Special case hack. */
|
||||
DESC (_thread_db_pthread_dtvp,
|
||||
|
|
Loading…
Reference in New Issue