Fix Solaris/x86 libitm build
* configure.tgt: Handle i386 like i[456]86. * config/generic/tls.h [!HAVE_ARCH_GTM_THREAD] (gtm_thr): Don't take address. * config/generic/tls.cc [!HAVE_ARCH_GTM_THREAD || !HAVE_ARCH_GTM_THREAD_DISP] (_gtm_thr_tls): New variable. From-SVN: r181163
This commit is contained in:
parent
dbe175248f
commit
e28a3d8bf2
3 changed files with 6 additions and 2 deletions
|
@ -26,6 +26,10 @@
|
|||
|
||||
namespace GTM HIDDEN {
|
||||
|
||||
#if !defined(HAVE_ARCH_GTM_THREAD) || !defined(HAVE_ARCH_GTM_THREAD_DISP)
|
||||
__thread gtm_thread_tls _gtm_thr_tls;
|
||||
#endif
|
||||
|
||||
// Filter out any updates that overlap the libitm stack, as defined by
|
||||
// TOP (entry point to library) and BOT (below current function). This
|
||||
// definition should be fine for all stack-grows-down architectures.
|
||||
|
|
|
@ -49,7 +49,7 @@ extern __thread gtm_thread_tls _gtm_thr_tls;
|
|||
#ifndef HAVE_ARCH_GTM_THREAD
|
||||
// If the target does not provide optimized access to the thread-local
|
||||
// data, simply access the TLS variable defined above.
|
||||
static inline gtm_thread *gtm_thr() { return &_gtm_thr_tls.thr; }
|
||||
static inline gtm_thread *gtm_thr() { return _gtm_thr_tls.thr; }
|
||||
static inline void set_gtm_thr(gtm_thread *x) { _gtm_thr_tls.thr = x; }
|
||||
#endif
|
||||
|
||||
|
|
|
@ -52,7 +52,7 @@ case "${target_cpu}" in
|
|||
powerpc*) ARCH=powerpc ;;
|
||||
s390*) ARCH=s390 ;;
|
||||
|
||||
i[456]86)
|
||||
i[3456]86)
|
||||
case " ${CC} ${CFLAGS} " in
|
||||
*" -m64 "*)
|
||||
;;
|
||||
|
|
Loading…
Add table
Reference in a new issue