2004-04-09  Thorsten Kukuk  <kukuk@suse.de>

	* sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x.

2004-04-09  Steven Munroe  <sjmunroe@us.ibm.com>

	* sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
This commit is contained in:
Ulrich Drepper 2004-04-09 19:10:05 +00:00
parent c4c5feda77
commit 7906dd5626
4 changed files with 29 additions and 6 deletions

View File

@ -1,3 +1,11 @@
2004-04-09 Thorsten Kukuk <kukuk@suse.de>
* sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x.
2004-04-09 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
2004-04-09 Andreas Schwab <schwab@suse.de>
* sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Add

View File

@ -1,3 +1,11 @@
2004-04-09 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/tls.h (TLS_INIT_TP): Eliminate lvalue cast from
__thread_self assignment.
(THREAD_DTV): Replace __thread_register with __thread_self.
(INIT_THREAD_SELF): Eliminate lvalue cast from __thread_self
assignment.
2004-04-08 Alexandre Oliva <aoliva@redhat.com>
* signals.c (pthread_sigmask): Don't ever block or mask

View File

@ -92,19 +92,24 @@ typedef struct
/* Return dtv of given thread descriptor. */
# define GET_DTV(TCBP) (((tcbhead_t *) (TCBP))[-1].dtv)
/* The global register variable is declared in pt-machine.h with
the wrong type, but the compiler doesn't like us declaring another. */
/* We still need this define so that tcb-offsets.sym can override it and
use THREAD_SELF to generate MULTIPLE_THREADS_OFFSET. */
# define __thread_register ((void *) __thread_self)
/* Code to initially initialize the thread pointer. This might need
special attention since 'errno' is not yet available and if the
operation can cause a failure 'errno' must not be touched. */
operation can cause a failure 'errno' must not be touched.
The global register variable is declared in pt-machine.h with the
wrong type, so we need some extra casts to get the desired result.
This avoids a lvalue cast that gcc-3.4 does not like. */
# define TLS_INIT_TP(TCBP, SECONDCALL) \
(__thread_register = (void *) (TCBP) + TLS_TCB_OFFSET, NULL)
(__thread_self = (struct _pthread_descr_struct *) \
((void *) (TCBP) + TLS_TCB_OFFSET), NULL)
/* Return the address of the dtv for the current thread. */
# define THREAD_DTV() \
(((tcbhead_t *) (__thread_register - TLS_TCB_OFFSET))[-1].dtv)
(((tcbhead_t *) ((void *) __thread_self - TLS_TCB_OFFSET))[-1].dtv)
/* Return the thread descriptor for the current thread. */
# undef THREAD_SELF
@ -114,7 +119,7 @@ typedef struct
# undef INIT_THREAD_SELF
# define INIT_THREAD_SELF(DESCR, NR) \
(__thread_register = ((void *) (DESCR) \
(__thread_self = (struct _pthread_descr_struct *)((void *) (DESCR) \
+ TLS_TCB_OFFSET + TLS_PRE_TCB_SIZE))
/* Make sure we have the p_multiple_threads member in the thread structure.

View File

@ -63,6 +63,8 @@ __ffs (x)
}
weak_alias (__ffs, ffs)
#if ULONG_MAX == UINT_MAX
#undef ffsl
weak_alias (__ffs, ffsl)
#endif