Define NO_TLS on ia64. The dynamic TLS implementation on ia64 is

broken for non-threaded shared processes in that __tls_get_addr()
assumes the thread pointer is always initialized. This is not the
case. When arenas_map is referenced in choose_arena() and it is
defined as a thread-local variable, it will result in a SIGSEGV.

PR: ia64/91846 (describes the TLS/ia64 bug).
This commit is contained in:
Marcel Moolenaar 2006-01-16 00:32:46 +00:00
parent 8e3ae6fe69
commit 707ca316b6

View File

@ -216,6 +216,7 @@ __FBSDID("$FreeBSD$");
#ifdef __ia64__
# define QUANTUM_2POW_MIN 4
# define SIZEOF_PTR 8
# define NO_TLS
#endif
#ifdef __alpha__
# define QUANTUM_2POW_MIN 4