convert to_get_thread_local_address to use target delegation
This converts to_get_thread_local_address to use TARGET_DEFAULT_NORETURN. One possible oddity is that this changes the text of the kind of exception thrown in some cases. This doesn't seem to be a problem; in fact perhaps the final call to 'error' in target_translate_tls_address should be changed to call generic_tls_error. 2014-07-07 Tom Tromey <tromey@redhat.com> * target.h (struct target_ops) <to_get_thread_local_address>: Use TARGET_DEFAULT_NORETURN. * target.c (generic_tls_error): New function. (target_translate_tls_address): Don't search target stack. * target-delegates.c: Rebuild. * ppc-linux-tdep.c (ppc_linux_spe_context): Don't search target stack. * linux-thread-db.c (thread_db_get_thread_local_address): Unconditionally call beneath target.
This commit is contained in:
parent
3bb9e7b43f
commit
f0f9ff9530
6 changed files with 44 additions and 22 deletions
|
@ -1874,11 +1874,7 @@ thread_db_get_thread_local_address (struct target_ops *ops,
|
|||
}
|
||||
|
||||
beneath = find_target_beneath (ops);
|
||||
if (beneath->to_get_thread_local_address)
|
||||
return beneath->to_get_thread_local_address (beneath, ptid, lm, offset);
|
||||
else
|
||||
throw_error (TLS_GENERIC_ERROR,
|
||||
_("TLS not supported on this target"));
|
||||
return beneath->to_get_thread_local_address (beneath, ptid, lm, offset);
|
||||
}
|
||||
|
||||
/* Callback routine used to find a thread based on the TID part of
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue