]> sourceware.org Git - glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Wed, 11 Dec 2002 09:32:45 +0000 (09:32 +0000)
committerUlrich Drepper <drepper@redhat.com>
Wed, 11 Dec 2002 09:32:45 +0000 (09:32 +0000)
2002-12-11  Ulrich Drepper  <drepper@redhat.com>

* init.c (__pthread_initialize_minimal): Fix initialization in
static lib by preventing gcc from being too clever.

nptl/ChangeLog
nptl/init.c

index 6dea2933e2db5f9dcfbda16720c8442b5481cacf..cc8ac2af4eb4354297276afa8d666f615fc354a2 100644 (file)
@@ -1,3 +1,8 @@
+2002-12-11  Ulrich Drepper  <drepper@redhat.com>
+
+       * init.c (__pthread_initialize_minimal): Fix initialization in
+       static lib by preventing gcc from being too clever.
+
 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
 
        * init.c (__pthread_initialize_minimal): Remove unneccesary
index e3f51119cf7bf867be1114fca898bed82c9392f3..678c0a56c8e25482395dc7e0d9cf8a992cb25fb5 100644 (file)
@@ -104,6 +104,12 @@ __pthread_initialize_minimal (void)
   /* Unlike in the dynamically linked case the dynamic linker has not
      taken care of initializing the TLS data structures.  */
   __libc_setup_tls (TLS_TCB_SIZE, TLS_TCB_ALIGN);
+
+  /* We must prevent gcc from being clever and move any of the
+     following code ahead of the __libc_setup_tls call.  This function
+     will initialize the thread register which is subsequently
+     used.  */
+  __asm __volatile ("");
 #endif
 
   /* Minimal initialization of the thread descriptor.  */
This page took 0.046576 seconds and 5 git commands to generate.