Only use USE___THREAD when defined
authorAndreas Schwab <schwab@redhat.com>
Tue, 13 Sep 2011 08:20:44 +0000 (10:20 +0200)
committerAndreas Schwab <schwab@redhat.com>
Tue, 13 Sep 2011 08:21:47 +0000 (10:21 +0200)
ChangeLog
elf/rtld.c

index da35ca4..6fd8c36 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-09-13  Andreas Schwab  <schwab@redhat.com>
+
+       * elf/rtld.c (dl_main): Only use USE___THREAD when defined.
+       (init_tls): Likewise.
+
 2011-09-12  Ulrich Drepper  <drepper@gmail.com>
 
        * sysdeps/ieee754/dbl-64/wordsize-64/s_logb.c: New file.
index b3959a3..764140d 100644 (file)
@@ -779,7 +779,12 @@ cannot allocate TLS data structures for initial thread");
 
   /* And finally install it for the main thread.  If ld.so itself uses
      TLS we know the thread pointer was initialized earlier.  */
-  const char *lossage = TLS_INIT_TP (tcbp, USE___THREAD);
+  const char *lossage
+#ifdef USE___THREAD
+    = TLS_INIT_TP (tcbp, USE___THREAD);
+#else
+    = TLS_INIT_TP (tcbp, 0);
+#endif
   if (__builtin_expect (lossage != NULL, 0))
     _dl_fatal_printf ("cannot set up thread-local storage: %s\n", lossage);
   tls_init_tp_called = true;
@@ -2310,7 +2315,12 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
      TLS we know the thread pointer was initialized earlier.  */
   if (! tls_init_tp_called)
     {
-      const char *lossage = TLS_INIT_TP (tcbp, USE___THREAD);
+      const char *lossage
+#ifdef USE___THREAD
+       = TLS_INIT_TP (tcbp, USE___THREAD);
+#else
+       = TLS_INIT_TP (tcbp, 0);
+#endif
       if (__builtin_expect (lossage != NULL, 0))
        _dl_fatal_printf ("cannot set up thread-local storage: %s\n",
                          lossage);