* sysdeps/powerpc/powerpc32/fpu/s_ceil.S (TWO52.0): Delete.
authorUlrich Drepper <drepper@redhat.com>
Sat, 21 May 2005 19:01:22 +0000 (19:01 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sat, 21 May 2005 19:01:22 +0000 (19:01 +0000)
* sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_floor.S (TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_floorf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_lround.S: Comment typo.
(NEGZERO.0, POINTFIVE.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_rint.S (TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_rintf.S (TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Code in .text.
(TWO52.0, POINTFIVE.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Code in .text.
(TWO23.0, POINTFIVE.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Code in .text.
(TWO52.0): Delete.
* sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Code in .text.
(TWO23.0): Delete.
* sysdeps/powerpc/powerpc32/memset.S (memset): Formatting.

19 files changed:
ChangeLog
linuxthreads/ChangeLog
nptl/ChangeLog
nptl/sysdeps/i386/tls.h
nptl/sysdeps/s390/tls.h
nptl/sysdeps/sparc/tls.h
nptl/sysdeps/x86_64/tls.h
sysdeps/powerpc/powerpc32/fpu/s_ceil.S
sysdeps/powerpc/powerpc32/fpu/s_ceilf.S
sysdeps/powerpc/powerpc32/fpu/s_floor.S
sysdeps/powerpc/powerpc32/fpu/s_floorf.S
sysdeps/powerpc/powerpc32/fpu/s_lround.S
sysdeps/powerpc/powerpc32/fpu/s_rint.S
sysdeps/powerpc/powerpc32/fpu/s_rintf.S
sysdeps/powerpc/powerpc32/fpu/s_round.S
sysdeps/powerpc/powerpc32/fpu/s_roundf.S
sysdeps/powerpc/powerpc32/fpu/s_trunc.S
sysdeps/powerpc/powerpc32/fpu/s_truncf.S
sysdeps/powerpc/powerpc32/memset.S

index ae5480f..1f354e3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2005-05-17  Alan Modra  <amodra@bigpond.net.au>
+
+       * sysdeps/powerpc/powerpc32/fpu/s_ceil.S (TWO52.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S (TWO23.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_floor.S (TWO52.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_floorf.S (TWO23.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Comment typo.
+       (NEGZERO.0, POINTFIVE.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_rint.S (TWO52.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_rintf.S (TWO23.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_round.S (__round): Code in .text.
+       (TWO52.0, POINTFIVE.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_roundf.S (__roundf): Code in .text.
+       (TWO23.0, POINTFIVE.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_trunc.S (__trunc): Code in .text.
+       (TWO52.0): Delete.
+       * sysdeps/powerpc/powerpc32/fpu/s_truncf.S (__truncf): Code in .text.
+       (TWO23.0): Delete.
+       * sysdeps/powerpc/powerpc32/memset.S (memset): Formatting.
+
 2005-05-19  Richard Henderson  <rth@redhat.com>
 
        * sysdeps/unix/clock_gettime.c (clock_gettime): Fix typo around
index 0079d0d..b2f3a08 100644 (file)
@@ -1,3 +1,9 @@
+2005-05-19  Richard Henderson  <rth@redhat.com>
+
+       * sysdeps/ia64/pspinlock.c (__pthread_spin_lock): Use
+       __sync_val_compare_and_swap, not explicit _si variant.
+       (__pthread_spin_trylock): Likewise.
+
 2005-05-05  Daniel Jacobowitz  <dan@codesourcery.com>
 
        * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h: Remove explicit
index f8a2ac1..d3fdbe6 100644 (file)
@@ -1,3 +1,14 @@
+2005-05-20  Jakub Jelinek  <jakub@redhat.com>
+
+       * sysdeps/i386/tls.h (TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN): Define to
+       size/alignment of struct pthread rather than tcbhead_t.
+       * sysdeps/x86_64/tls.h (TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN):
+       Likewise.
+       * sysdeps/s390/tls.h (TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN):
+       Likewise.
+       * sysdeps/sparc/tls.h (TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN):
+       Likewise.
+
 2005-05-19  Richard Henderson  <rth@redhat.com>
 
        * sysdeps/ia64/pthread_spin_lock.c (pthread_spin_lock): Use
index 06def42..c033114 100644 (file)
@@ -1,5 +1,5 @@
 /* Definition for thread-local data handling.  nptl/i386 version.
-   Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -102,11 +102,13 @@ union user_desc_init
 /* Get the thread descriptor definition.  */
 # include <nptl/descr.h>
 
-/* This is the size of the initial TCB.  */
-# define TLS_INIT_TCB_SIZE sizeof (tcbhead_t)
+/* This is the size of the initial TCB.  Can't be just sizeof (tcbhead_t),
+   because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole
+   struct pthread even when not linked with -lpthread.  */
+# define TLS_INIT_TCB_SIZE sizeof (struct pthread)
 
 /* Alignment requirements for the initial TCB.  */
-# define TLS_INIT_TCB_ALIGN __alignof__ (tcbhead_t)
+# define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread)
 
 /* This is the size of the TCB.  */
 # define TLS_TCB_SIZE sizeof (struct pthread)
index e93f3d0..060dde3 100644 (file)
@@ -81,11 +81,13 @@ typedef struct
 /* Get the thread descriptor definition.  */
 # include <nptl/descr.h>
 
-/* This is the size of the initial TCB.  */
-# define TLS_INIT_TCB_SIZE sizeof (tcbhead_t)
+/* This is the size of the initial TCB.  Can't be just sizeof (tcbhead_t),
+   because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole
+   struct pthread even when not linked with -lpthread.  */
+# define TLS_INIT_TCB_SIZE sizeof (struct pthread)
 
 /* Alignment requirements for the initial TCB.  */
-# define TLS_INIT_TCB_ALIGN __alignof__ (tcbhead_t)
+# define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread)
 
 /* This is the size of the TCB.  */
 # define TLS_TCB_SIZE sizeof (struct pthread)
index 8f54a0b..54b5485 100644 (file)
@@ -69,11 +69,13 @@ typedef struct
 
 register struct pthread *__thread_self __asm__("%g7");
 
-/* This is the size of the initial TCB.  */
-# define TLS_INIT_TCB_SIZE sizeof (tcbhead_t)
+/* This is the size of the initial TCB.  Can't be just sizeof (tcbhead_t),
+   because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole
+   struct pthread even when not linked with -lpthread.  */
+# define TLS_INIT_TCB_SIZE sizeof (struct pthread)
 
 /* Alignment requirements for the initial TCB.  */
-# define TLS_INIT_TCB_ALIGN __alignof__ (tcbhead_t)
+# define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread)
 
 /* This is the size of the TCB.  */
 # define TLS_TCB_SIZE sizeof (struct pthread)
index 12da9dc..3fc9b38 100644 (file)
@@ -1,5 +1,5 @@
 /* Definition for thread-local data handling.  nptl/x86_64 version.
-   Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -82,11 +82,13 @@ typedef struct
 # endif
 #endif
 
-/* This is the size of the initial TCB.  */
-# define TLS_INIT_TCB_SIZE sizeof (tcbhead_t)
+/* This is the size of the initial TCB.  Can't be just sizeof (tcbhead_t),
+   because NPTL getpid, __libc_alloca_cutoff etc. need (almost) the whole
+   struct pthread even when not linked with -lpthread.  */
+# define TLS_INIT_TCB_SIZE sizeof (struct pthread)
 
 /* Alignment requirements for the initial TCB.  */
-# define TLS_INIT_TCB_ALIGN __alignof__ (tcbhead_t)
+# define TLS_INIT_TCB_ALIGN __alignof__ (struct pthread)
 
 /* This is the size of the TCB.  */
 # define TLS_TCB_SIZE sizeof (struct pthread)
index 22cf76e..b76e9ff 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 3
-       .type   TWO52.0,@object
-       .size   TWO52.0,8
-TWO52.0:
-       .long 0x43300000
-       .long 0
-
        .section        .rodata.cst8,"aM",@progbits,8
        .align 3
 .LC0:  /* 2**52 */
index e7a7218..9315d8d 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 2
-       .type   TWO23.0,@object
-       .size   TWO23.0,4
-TWO23.0:
-       .long 0x4b000000
-
        .section        .rodata.cst4,"aM",@progbits,4
        .align 2
 .LC0:  /* 2**23 */
index 812ea7c..6b79ca4 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 3
-       .type   TWO52.0,@object
-       .size   TWO52.0,8
-TWO52.0:
-       .long 0x43300000
-       .long 0
-
        .section        .rodata.cst8,"aM",@progbits,8
        .align 3
 .LC0:  /* 2**52 */
index ead41d4..8ee0644 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 2
-       .type   TWO23.0,@object
-       .size   TWO23.0,4
-TWO23.0:
-       .long 0x4b000000
-
        .section        .rodata.cst4,"aM",@progbits,4
        .align 2
 .LC0:  /* 2**23 */
index dcb97e3..ddac896 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 3
-       .type   NEGZERO.0,@object
-       .size   NEGZERO.0,8
-NEGZERO.0:
-       .long 0x00000000
-       .long 0
-       .type   POINTFIVE.0,@object
-       .size   POINTFIVE.0,8
-POINTFIVE.0:
-       .long 0x3fe00000
-       .long 0
-
        .section        .rodata.cst8,"aM",@progbits,8
        .align 3
 .LC0:  /* 0.0 */
@@ -78,8 +65,8 @@ ENTRY (__lround)
 .L9:
        fctiwz  fp2,fp1         /* Convert To Integer DW lround toward 0.  */
        stfd    fp2,-8(r1)
-       nop     /* Insure the following load is in a different dispatch group */
-       nop     /* to avoid pipe stall on POWER4&5.  */
+       nop     /* Ensure the following load is in a different dispatch  */
+       nop     /* group to avoid pipe stall on POWER4&5.  */
        nop
        lwz     r3,-4(r1)
        blr
index fa02dbc..5d65f12 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 3
-       .type   TWO52.0,@object
-       .size   TWO52.0,8
-TWO52.0:
-       .long 0x43300000
-       .long 0
-
        .section        .rodata.cst8,"aM",@progbits,8
        .align 3
 .LC0:  /* 2**52 */
index 7825951..d02bd06 100644 (file)
 
 #include <sysdep.h>
 
-
-       .section        .rodata
-       .align 2
-       .type   TWO23.0,@object
-       .size   TWO23.0,4
-TWO23.0:
-       .long 0x4b000000
-
        .section        .rodata.cst4,"aM",@progbits,4
        .align 2
 .LC0:  /* 2**23 */
index 39eab23..7eec8c6 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 3
-       .type   TWO52.0,@object
-       .size   TWO52.0,8
-TWO52.0:
-       .long 0x43300000
-       .long 0
-       .type   POINTFIVE.0,@object
-       .size   POINTFIVE.0,8
-POINTFIVE.0:
-       .long 0x3fe00000
-       .long 0
-
        .section        .rodata.cst8,"aM",@progbits,8
        .align 3
 .LC0:  /* 2**52 */
@@ -51,6 +38,7 @@ POINTFIVE.0:
    "Round toward Zero" mode and round by adding +-0.5 before rounding
    to the integer value.  */
 
+       .section        ".text"
 ENTRY (__round)
        mffs    fp11            /* Save current FPU rounding mode.  */
 #ifdef SHARED
index a9b42f0..856be6f 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 2
-       .type   TWO23.0,@object
-       .size   TWO23.0,4
-TWO23.0:
-       .long 0x4b000000
-       .type   POINTFIVE.0,@object
-       .size   POINTFIVE.0,4
-POINTFIVE.0:
-       .long 0x3f000000
-
        .section        .rodata.cst4,"aM",@progbits,4
        .align 2
 .LC0:  /* 2**23 */
@@ -47,6 +36,7 @@ POINTFIVE.0:
    "Round toward Zero" mode and round by adding +-0.5 before rounding
    to the integer value.  */
 
+       .section        ".text"
 ENTRY (__roundf )
        mffs    fp11            /* Save current FPU rounding mode.  */
 #ifdef SHARED
index 08acc00..59c7147 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 3
-       .type   TWO52.0,@object
-       .size   TWO52.0,8
-TWO52.0:
-       .long 0x43300000
-       .long 0
-
        .section        .rodata.cst8,"aM",@progbits,8
        .align 3
 .LC0:  /* 2**52 */
@@ -40,6 +32,7 @@ TWO52.0:
    We set "round toward Zero" mode and trunc by adding +-2**52 then
    subtracting +-2**52.  */
 
+       .section        ".text"
 ENTRY (__trunc)
        mffs    fp11            /* Save current FPU rounding mode.  */
 #ifdef SHARED
index 3b6fe73..5275c69 100644 (file)
 
 #include <sysdep.h>
 
-       .section        .rodata
-       .align 2
-       .type   TWO23.0,@object
-       .size   TWO23.0,2
-TWO23.0:
-       .long 0x4b000000
-
        .section        .rodata.cst4,"aM",@progbits,4
        .align 2
 .LC0:  /* 2**23 */
@@ -38,6 +31,7 @@ TWO23.0:
    We set "round toward Zero" mode and trunc by adding +-2**23 then
    subtracting +-2**23.  */
 
+       .section        ".text"
 ENTRY (__truncf)
        mffs    fp11            /* Save current FPU rounding mode.  */
 #ifdef SHARED
index 53f1143..4c0edc8 100644 (file)
@@ -140,7 +140,7 @@ L(nondcbz):
 
 /* We can't use dcbz here as we don't know the cache line size.  We can
    use "data cache block touch for store", which is safe.  */
-L(c3): dcbtst rNEG64, rMEMP
+L(c3): dcbtst  rNEG64, rMEMP
        stw     rCHR, -4(rMEMP)
        stw     rCHR, -8(rMEMP)
        stw     rCHR, -12(rMEMP)
@@ -166,7 +166,7 @@ L(cloopdone):
        add     rMEMP, rMEMP, rALIGN
        b       L(medium_tail2) /* 72nd instruction from .align */
 
-       .align 5
+       .align  5
        nop
 /* Clear cache lines of memory in 128-byte chunks.
    This code is optimized for processors with 32-byte cache lines.
@@ -200,7 +200,7 @@ L(zloop):
        beqlr   cr5
        b       L(medium_tail2)
 
-       .align 5
+       .align  5
 L(small):
 /* Memset of 4 bytes or less.  */
        cmplwi  cr5, rLEN, 1
@@ -218,7 +218,7 @@ L(small):
        blr
 
 /* Memset of 0-31 bytes.  */
-       .align 5
+       .align  5
 L(medium):
        cmplwi  cr1, rLEN, 16
 L(medium_tail2):
@@ -258,70 +258,70 @@ L(medium_28t):
 
 L(checklinesize):
 #ifdef SHARED
-       mflr rTMP
+       mflr    rTMP
 /* If the remaining length is less the 32 bytes then don't bother getting
-        the cache line size.  */
+   the cache line size.  */
        beq     L(medium)
 /* Establishes GOT addressability so we can load __cache_line_size
    from static. This value was set from the aux vector during startup.  */
-       bl   _GLOBAL_OFFSET_TABLE_@local-4
-       mflr rGOT
-       lwz      rGOT,__cache_line_size@got(rGOT)
-       lwz      rCLS,0(rGOT)
-       mtlr rTMP
+       bl      _GLOBAL_OFFSET_TABLE_@local-4
+       mflr    rGOT
+       lwz     rGOT,__cache_line_size@got(rGOT)
+       lwz     rCLS,0(rGOT)
+       mtlr    rTMP
 #else
 /* Load __cache_line_size from static. This value was set from the
    aux vector during startup.  */
-       lis      rCLS,__cache_line_size@ha
+       lis     rCLS,__cache_line_size@ha
 /* If the remaining length is less the 32 bytes then don't bother getting
-        the cache line size.  */
+   the cache line size.  */
        beq     L(medium)
-       lwz  rCLS,__cache_line_size@l(rCLS)
+       lwz     rCLS,__cache_line_size@l(rCLS)
 #endif
 
-/*If the cache line size was not set then goto to L(nondcbz), which is
-       safe for any cache line size.  */
-       cmplwi cr1,rCLS,0
+/* If the cache line size was not set then goto to L(nondcbz), which is
+   safe for any cache line size.  */
+       cmplwi  cr1,rCLS,0
        beq     cr1,L(nondcbz)
 
 /* If the cache line size is 32 bytes then goto to L(zloopstart),
-        which is coded specificly for 32-byte lines (and 601).  */
-       cmplwi cr1,rCLS,32
+   which is coded specificly for 32-byte lines (and 601).  */
+       cmplwi  cr1,rCLS,32
        beq     cr1,L(zloopstart)
 
 /* Now we know the cache line size and it is not 32-bytes.  However
-        we may not yet be aligned to the cache line and may have a partial
-        line to fill.  Touch it 1st to fetch the cache line.  */
-       dcbtst 0,rMEMP
+   we may not yet be aligned to the cache line and may have a partial
+   line to fill.  Touch it 1st to fetch the cache line.  */
+       dcbtst  0,rMEMP
 
-       addi rCLM,rCLS,-1
+       addi    rCLM,rCLS,-1
 L(getCacheAligned):
-       cmplwi cr1,rLEN,32
-       and. rTMP,rCLM,rMEMP
-       blt      cr1,L(handletail32)
-       beq      L(cacheAligned)
+       cmplwi  cr1,rLEN,32
+       and.    rTMP,rCLM,rMEMP
+       blt     cr1,L(handletail32)
+       beq     L(cacheAligned)
 /* We are not aligned to start of a cache line yet.  Store 32-byte
    of data and test again.  */
-       addi rMEMP,rMEMP,32
-       addi rLEN,rLEN,-32
-       stw      rCHR,-32(rMEMP)
-       stw      rCHR,-28(rMEMP)
-       stw      rCHR,-24(rMEMP)
-       stw      rCHR,-20(rMEMP)
-       stw      rCHR,-16(rMEMP)
-       stw      rCHR,-12(rMEMP)
-       stw      rCHR,-8(rMEMP)
-       stw      rCHR,-4(rMEMP)
-       b        L(getCacheAligned)
+       addi    rMEMP,rMEMP,32
+       addi    rLEN,rLEN,-32
+       stw     rCHR,-32(rMEMP)
+       stw     rCHR,-28(rMEMP)
+       stw     rCHR,-24(rMEMP)
+       stw     rCHR,-20(rMEMP)
+       stw     rCHR,-16(rMEMP)
+       stw     rCHR,-12(rMEMP)
+       stw     rCHR,-8(rMEMP)
+       stw     rCHR,-4(rMEMP)
+       b       L(getCacheAligned)
 
 /* Now we are aligned to the cache line and can use dcbz.  */
 L(cacheAligned):
-       cmplw cr1,rLEN,rCLS
-       blt      cr1,L(handletail32)
-       dcbz 0,rMEMP
-       subf rLEN,rCLS,rLEN
-       add      rMEMP,rMEMP,rCLS
-       b        L(cacheAligned)
+       cmplw   cr1,rLEN,rCLS
+       blt     cr1,L(handletail32)
+       dcbz    0,rMEMP
+       subf    rLEN,rCLS,rLEN
+       add     rMEMP,rMEMP,rCLS
+       b       L(cacheAligned)
 
 /* We are here because; the cache line size was set, it was not
    32-bytes, and the remainder (rLEN) is now less than the actual cache
@@ -329,7 +329,7 @@ L(cacheAligned):
    store the remaining bytes.  */
 L(handletail32):
        clrrwi. rALIGN, rLEN, 5
-       b               L(nondcbz)
+       b       L(nondcbz)
 
 END (BP_SYM (memset))
 libc_hidden_builtin_def (memset)