* acinclude.m4 (SRV_CHECK_TLS_GET_ADDR): New.

* configure.ac: Use it.  Define HAVE_TD_THR_TLS_GET_ADDR.
	* config.in, configure: Regenerated.
	* inferiors.c (gdb_id_to_thread): New function.
	(gdb_id_to_thread_id): Use it.
	* linux-low.c (linux_target_ops): Use thread_db_get_tls_address.
	* linux-low.h (struct process_info): Add th member.
	(thread_db_get_tls_address): New prototype.
	* remote-utils.c (decode_address): Make non-static.
	* server.c (handle_query): Handle qGetTLSAddr.
	* server.h (gdb_id_to_thread, decode_address): New prototypes.
	* target.h (struct target_ops): Add get_tls_address.
	* thread-db.c (maybe_attach_thread): Save the thread handle.
	(thread_db_get_tls_address): New.
This commit is contained in:
Daniel Jacobowitz 2006-10-17 16:02:27 +00:00
parent 5bd2f6e2a6
commit dae5f5cf4b
13 changed files with 2164 additions and 2673 deletions

View file

@ -1652,6 +1652,13 @@ static struct target_ops linux_target_ops = {
linux_stopped_data_address,
#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_MMU__)
linux_read_offsets,
#else
NULL,
#endif
#ifdef USE_THREAD_DB
thread_db_get_tls_address,
#else
NULL,
#endif
};