re PR bootstrap/43170 (gcc 4.5 20100218 bootstrap compare fails on os x 10.6)
config: PR bootstrap/43170 * tls.m4 (GCC_CHECK_TLS): Add volatile qualifier to the test references. Move the main () test reference ahead of pthread_create(). Add a comment to explain the requirements of the test. libgomp: PR bootstrap/43170 * configure: Regenerate. libjava: PR bootstrap/43170 * configure: Regenerate. libmudflap: PR bootstrap/43170 * configure: Regenerate. libstdc++-v3: PR bootstrap/43170 * configure: Regenerate. From-SVN: r160457
This commit is contained in:
parent
fa9d7d3b70
commit
dbd34b899f
|
@ -1,3 +1,11 @@
|
||||||
|
2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR bootstrap/43170
|
||||||
|
* tls.m4 (GCC_CHECK_TLS): Add volatile qualifier to the test
|
||||||
|
references. Move the main () test reference ahead of
|
||||||
|
pthread_create(). Add a comment to explain the requirements
|
||||||
|
of the test.
|
||||||
|
|
||||||
2010-06-03 Joern Rennecke <joern.rennecke@embecosm.com>
|
2010-06-03 Joern Rennecke <joern.rennecke@embecosm.com>
|
||||||
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||||
|
|
||||||
|
|
|
@ -38,11 +38,16 @@ AC_DEFUN([GCC_CHECK_TLS], [
|
||||||
CFLAGS="$chktls_save_CFLAGS"
|
CFLAGS="$chktls_save_CFLAGS"
|
||||||
if test "X$thread_CFLAGS" != Xfailed; then
|
if test "X$thread_CFLAGS" != Xfailed; then
|
||||||
CFLAGS="$thread_CFLAGS $chktls_save_CFLAGS"
|
CFLAGS="$thread_CFLAGS $chktls_save_CFLAGS"
|
||||||
|
dnl Test for an old glibc bug that violated the __thread property.
|
||||||
|
dnl Use volatile to ensure the compiler won't optimize away pointer
|
||||||
|
dnl accesses it might otherwise assume to be redundant, or reorder
|
||||||
|
dnl them and reuse storage, which might lead to them pointing to
|
||||||
|
dnl the same location.
|
||||||
AC_RUN_IFELSE(
|
AC_RUN_IFELSE(
|
||||||
[AC_LANG_PROGRAM(
|
[AC_LANG_PROGRAM(
|
||||||
[#include <pthread.h>
|
[#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -51,11 +56,11 @@ AC_DEFUN([GCC_CHECK_TLS], [
|
||||||
}],
|
}],
|
||||||
[pthread_t thread;
|
[pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);])],
|
return (a_in_other_thread == a_in_main_thread);])],
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR bootstrap/43170
|
||||||
|
* configure: Regenerate.
|
||||||
|
|
||||||
2010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
2010-05-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||||
|
|
||||||
PR other/43620
|
PR other/43620
|
||||||
|
|
|
@ -15380,7 +15380,7 @@ else
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -15392,11 +15392,11 @@ main ()
|
||||||
{
|
{
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);
|
return (a_in_other_thread == a_in_main_thread);
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR bootstrap/43170
|
||||||
|
* configure: Regenerate.
|
||||||
|
|
||||||
2010-06-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
2010-06-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||||
|
|
||||||
* configure: Regenerate.
|
* configure: Regenerate.
|
||||||
|
|
|
@ -24390,7 +24390,7 @@ else
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -24402,11 +24402,11 @@ main ()
|
||||||
{
|
{
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);
|
return (a_in_other_thread == a_in_main_thread);
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR bootstrap/43170
|
||||||
|
* configure: Regenerate.
|
||||||
|
|
||||||
2010-05-16 Uros Bizjak <ubizjak@gmail.com>
|
2010-05-16 Uros Bizjak <ubizjak@gmail.com>
|
||||||
|
|
||||||
* testsuite/libmudflap.c/pass46-frag.c (dg-options): Remove -Wall.
|
* testsuite/libmudflap.c/pass46-frag.c (dg-options): Remove -Wall.
|
||||||
|
|
|
@ -11479,7 +11479,7 @@ else
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -11491,11 +11491,11 @@ main ()
|
||||||
{
|
{
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);
|
return (a_in_other_thread == a_in_main_thread);
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2010-06-09 Iain Sandoe <iains@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR bootstrap/43170
|
||||||
|
* configure: Regenerate.
|
||||||
|
|
||||||
2010-06-09 Paolo Carlini <paolo.carlini@oracle.com>
|
2010-06-09 Paolo Carlini <paolo.carlini@oracle.com>
|
||||||
|
|
||||||
PR libstdc++/44413
|
PR libstdc++/44413
|
||||||
|
|
|
@ -25548,7 +25548,7 @@ else
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -25560,11 +25560,11 @@ main ()
|
||||||
{
|
{
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);
|
return (a_in_other_thread == a_in_main_thread);
|
||||||
|
@ -44486,7 +44486,7 @@ else
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -44498,11 +44498,11 @@ main ()
|
||||||
{
|
{
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);
|
return (a_in_other_thread == a_in_main_thread);
|
||||||
|
@ -50571,7 +50571,7 @@ else
|
||||||
/* end confdefs.h. */
|
/* end confdefs.h. */
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
__thread int a;
|
__thread int a;
|
||||||
static int *a_in_other_thread;
|
static int *volatile a_in_other_thread;
|
||||||
static void *
|
static void *
|
||||||
thread_func (void *arg)
|
thread_func (void *arg)
|
||||||
{
|
{
|
||||||
|
@ -50583,11 +50583,11 @@ main ()
|
||||||
{
|
{
|
||||||
pthread_t thread;
|
pthread_t thread;
|
||||||
void *thread_retval;
|
void *thread_retval;
|
||||||
int *a_in_main_thread;
|
int *volatile a_in_main_thread;
|
||||||
|
a_in_main_thread = &a;
|
||||||
if (pthread_create (&thread, (pthread_attr_t *)0,
|
if (pthread_create (&thread, (pthread_attr_t *)0,
|
||||||
thread_func, (void *)0))
|
thread_func, (void *)0))
|
||||||
return 0;
|
return 0;
|
||||||
a_in_main_thread = &a;
|
|
||||||
if (pthread_join (thread, &thread_retval))
|
if (pthread_join (thread, &thread_retval))
|
||||||
return 0;
|
return 0;
|
||||||
return (a_in_other_thread == a_in_main_thread);
|
return (a_in_other_thread == a_in_main_thread);
|
||||||
|
|
Loading…
Reference in New Issue