mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-24 22:10:13 +00:00
2004-03-13 Jakub Jelinek <jakub@redhat.com>
* db_info.c: Don't use TLS_TP_OFFSET in the #if, but TLS_TCB_SIZE == 0 ?: in the DESC macro.
This commit is contained in:
parent
ab0fcbfaaa
commit
6964ccb2fe
@ -53,19 +53,13 @@ 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. */
|
||||
/* Special case hack. If TLS_TCB_SIZE == 0 (on 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 + offsetof (tcbhead_t, dtv), union dtv)
|
||||
TLS_PRE_TCB_SIZE + offsetof (tcbhead_t, dtv)
|
||||
- (TLS_TCB_SIZE == 0 ? sizeof (tcbhead_t) : 0), union dtv)
|
||||
#endif
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user