]> sourceware.org Git - glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Fri, 20 Feb 2004 20:21:20 +0000 (20:21 +0000)
committerUlrich Drepper <drepper@redhat.com>
Fri, 20 Feb 2004 20:21:20 +0000 (20:21 +0000)
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
2003-11-27 atan2 test.

14 files changed:
linuxthreads/ChangeLog
nptl/ChangeLog
nptl/DESIGN-barrier.txt
nptl/sysdeps/pthread/pthread_barrier_wait.c
sysdeps/alpha/dl-machine.h
sysdeps/alpha/dl-sysdep.h [new file with mode: 0644]
sysdeps/generic/ldsodefs.h
sysdeps/ia64/dl-machine.h
sysdeps/ia64/dl-sysdep.h [new file with mode: 0644]
sysdeps/powerpc/fpu/bits/mathinline.h
sysdeps/sparc/dl-sysdep.h [new file with mode: 0644]
sysdeps/sparc/sparc32/dl-machine.h
sysdeps/sparc/sparc32/fpu/libm-test-ulps
sysdeps/sparc/sparc64/dl-machine.h

index 3cc1a21282567dd9e096f89f3f7822d687e07da5..b25ce574816661d23977b221640c5918efe690d7 100644 (file)
@@ -1,5 +1,8 @@
 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
 
+       * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
+       2003-11-27 atan2 test.
+
        * sysdeps/unix/sysv/linux/ia64/dl-sysdep.h (DL_ARGV_NOT_RELRO): Define.
 
 2004-02-10  Steven Munroe  <sjmunroe@us.ibm.com>
index 9a3b463e6bb6ee9df05f6e9c7cd3dda290aafbe7..6c9002aea1146355506bc549a4a788d8f30d73f9 100644 (file)
@@ -1,3 +1,7 @@
+2004-02-20  Jakub Jelinek  <jakub@redhat.com>
+
+       * sysdeps/unix/sysv/linux/ia64/dl-sysdep.h (DL_ARGV_NOT_RELRO): Define.
+
 2004-02-19  Andreas Schwab  <schwab@suse.de>
 
        * sysdeps/pthread/pthread_barrier_wait.c (pthread_barrier_wait):
index 754e4712e1aefe277d4bfbee5089489cfce1a94e..b0fbf14fb1ef8472e4393a0f1dc119c570224379 100644 (file)
@@ -31,12 +31,9 @@ pthread_barrier_wait(barrier_t *barrier)
     result = BARRIER_SERIAL_THREAD;
   } else {
     event = barrier->curr_event;
+    lll_unlock(barrier->lock);
     do {
-      lll_unlock(barrier->lock);
-
       futex_wait(&barrier->curr_event, event)
-
-      lll_lock(barrier->lock);
     } while (event == barrier->curr_event);
   }
 
index f0f65b05c7dfbafecd60ca8a8b59047f93eb1e79..aa5b42d419be3a59d9fd969b33f863340fac226c 100644 (file)
@@ -55,17 +55,13 @@ pthread_barrier_wait (barrier)
       /* The number of the event we are waiting for.  The barrier's event
         number must be bumped before we continue.  */
       unsigned int event = ibarrier->curr_event;
-      do
-       {
-         /* Before suspending, make the barrier available to others.  */
-         lll_unlock (ibarrier->lock);
 
-         /* Wait for the event counter of the barrier to change.  */
-         lll_futex_wait (&ibarrier->curr_event, event);
+      /* Before suspending, make the barrier available to others.  */
+      lll_unlock (ibarrier->lock);
 
-         /* We are going to access shared data.  */
-         lll_lock (ibarrier->lock);
-       }
+      /* Wait for the event counter of the barrier to change.  */
+      do
+       lll_futex_wait (&ibarrier->curr_event, event);
       while (event == ibarrier->curr_event);
     }
 
index cf96b778bd1939214e1d2689f90f0bfc8b98b48f..3616faedbff3c7b78faab00a3272774a05c8d9e9 100644 (file)
@@ -293,10 +293,6 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
   strong_alias (_dl_runtime_resolve, _dl_runtime_profile);
 #endif
 
-/* _dl_argv cannot be attribute_relro, because _dl_start_user below
-   might write into it after _dl_start returns.  */
-#define DL_ARGV_NOT_RELRO 1
-
 /* Initial entry point code for the dynamic linker.
    The C function `_dl_start' is the real entry point;
    its return value is the user program's entry point.  */
diff --git a/sysdeps/alpha/dl-sysdep.h b/sysdeps/alpha/dl-sysdep.h
new file mode 100644 (file)
index 0000000..0b4c805
--- /dev/null
@@ -0,0 +1,41 @@
+/* System-specific settings for dynamic linker code.  Alpha version.
+   Copyright (C) 2002, 2003, 2004 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _DL_SYSDEP_H
+#define _DL_SYSDEP_H   1
+
+/* This macro must be defined to either 0 or 1.
+
+   If 1, then an errno global variable hidden in ld.so will work right with
+   all the errno-using libc code compiled for ld.so, and there is never a
+   need to share the errno location with libc.  This is appropriate only if
+   all the libc functions that ld.so uses are called without PLT and always
+   get the versions linked into ld.so rather than the libc ones.  */
+
+#ifdef IS_IN_rtld
+# define RTLD_PRIVATE_ERRNO 1
+#else
+# define RTLD_PRIVATE_ERRNO 0
+#endif
+
+/* _dl_argv cannot be attribute_relro, because _dl_start_user
+   might write into it after _dl_start returns.  */
+#define DL_ARGV_NOT_RELRO 1
+
+#endif /* dl-sysdep.h */
index 73d154a1e98f63a424fa3c816686b8d034f7b355..a3d7935ee2eb2bc336fd5c2c5c65148b8e37aa81 100644 (file)
@@ -469,9 +469,17 @@ rtld_hidden_proto (__libc_stack_end)
 
 /* Parameters passed to the dynamic linker.  */
 extern int _dl_argc attribute_hidden attribute_relro;
-extern char **_dl_argv attribute_relro;
+extern char **_dl_argv
+#ifndef DL_ARGV_NOT_RELRO
+     attribute_relro
+#endif
+     ;
 #ifdef IS_IN_rtld
-extern char **_dl_argv_internal attribute_hidden attribute_relro;
+extern char **_dl_argv_internal attribute_hidden
+# ifndef DL_ARGV_NOT_RELRO
+     attribute_relro
+# endif
+     ;
 # define rtld_progname (INTUSE(_dl_argv)[0])
 #else
 # define rtld_progname _dl_argv[0]
index 50a88221056c4f73b758b247653724c1c10aa457..ca47752c9e00bfae3e72282851352ff8d12f3fcc 100644 (file)
@@ -272,10 +272,6 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
 #define DL_STACK_END(cookie) \
   ((void *) (((long) (cookie)) - 16))
 
-/* _dl_argv cannot be attribute_relro, because _dl_start_user below
-   might write into it after _dl_start returns.  */
-#define DL_ARGV_NOT_RELRO 1
-
 /* Initial entry point code for the dynamic linker.
    The C function `_dl_start' is the real entry point;
    its return value is the user program's entry point.  */
diff --git a/sysdeps/ia64/dl-sysdep.h b/sysdeps/ia64/dl-sysdep.h
new file mode 100644 (file)
index 0000000..352bb3b
--- /dev/null
@@ -0,0 +1,41 @@
+/* System-specific settings for dynamic linker code.  IA-64 version.
+   Copyright (C) 2002, 2003, 2004 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _DL_SYSDEP_H
+#define _DL_SYSDEP_H   1
+
+/* This macro must be defined to either 0 or 1.
+
+   If 1, then an errno global variable hidden in ld.so will work right with
+   all the errno-using libc code compiled for ld.so, and there is never a
+   need to share the errno location with libc.  This is appropriate only if
+   all the libc functions that ld.so uses are called without PLT and always
+   get the versions linked into ld.so rather than the libc ones.  */
+
+#ifdef IS_IN_rtld
+# define RTLD_PRIVATE_ERRNO 1
+#else
+# define RTLD_PRIVATE_ERRNO 0
+#endif
+
+/* _dl_argv cannot be attribute_relro, because _dl_start_user
+   might write into it after _dl_start returns.  */
+#define DL_ARGV_NOT_RELRO 1
+
+#endif /* dl-sysdep.h */
index 34309c1a68ab8cb5e999b5ff737de256d86fc42e..dcd506d49e61d77d7eb2867259a894495344739c 100644 (file)
@@ -1,5 +1,6 @@
 /* Inline math functions for powerpc.
-   Copyright (C) 1995,1996,1997,1998,1999,2000 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2004
+   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
@@ -58,6 +59,8 @@
 #endif  /* __cplusplus */
 
 #ifdef __USE_ISOC99
+
+# ifndef __powerpc64__
 __MATH_INLINE long int lrint (double __x) __THROW;
 __MATH_INLINE long int
 lrint (double __x) __THROW
@@ -81,6 +84,7 @@ lrintf (float __x) __THROW
   __asm__ ("fctiw %0,%1" : "=f"(__u.__d) : "f"(__x));
   return __u.__ll[1];
 }
+# endif
 
 __MATH_INLINE double fdim (double __x, double __y) __THROW;
 __MATH_INLINE double
diff --git a/sysdeps/sparc/dl-sysdep.h b/sysdeps/sparc/dl-sysdep.h
new file mode 100644 (file)
index 0000000..eb6a788
--- /dev/null
@@ -0,0 +1,41 @@
+/* System-specific settings for dynamic linker code.  SPARC version.
+   Copyright (C) 2002, 2003, 2004 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
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, write to the Free
+   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+   02111-1307 USA.  */
+
+#ifndef _DL_SYSDEP_H
+#define _DL_SYSDEP_H   1
+
+/* This macro must be defined to either 0 or 1.
+
+   If 1, then an errno global variable hidden in ld.so will work right with
+   all the errno-using libc code compiled for ld.so, and there is never a
+   need to share the errno location with libc.  This is appropriate only if
+   all the libc functions that ld.so uses are called without PLT and always
+   get the versions linked into ld.so rather than the libc ones.  */
+
+#ifdef IS_IN_rtld
+# define RTLD_PRIVATE_ERRNO 1
+#else
+# define RTLD_PRIVATE_ERRNO 0
+#endif
+
+/* _dl_argv cannot be attribute_relro, because _dl_start_user
+   might write into it after _dl_start returns.  */
+#define DL_ARGV_NOT_RELRO 1
+
+#endif /* dl-sysdep.h */
index 70ba0ae76fed433d58ba6228f3464f9d5b010fb6..c2a5026f5b1d4a6f1611f501d2e29f18ed63e275 100644 (file)
@@ -253,10 +253,6 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
 #define DL_STACK_END(cookie) \
   ((void *) (((long) (cookie)) - (22 - 6) * 4))
 
-/* _dl_argv cannot be attribute_relro, because _dl_start_user below
-   might write into it after _dl_start returns.  */
-#define DL_ARGV_NOT_RELRO 1
-
 /* Initial entry point code for the dynamic linker.
    The C function `_dl_start' is the real entry point;
    its return value is the user program's entry point.  */
index 73172b49a0941785a4ad73ae30f74d8d035ac98b..765ddc55729dfdab2004c8a615ff56d8467925b7 100644 (file)
@@ -10,6 +10,9 @@ ifloat: 3
 Test "atan2 (1.390625, 0.9296875) == 0.981498387184244311516296577615519772":
 float: 1
 ifloat: 1
+Test "atan2 (-0.00756827042671106339, -.001792735857538728036) == -1.80338464113663849327153994380":
+float: 6
+ifloat: 6
 
 # atanh
 Test "atanh (0.75) == 0.972955074527656652552676371721589865":
@@ -640,8 +643,8 @@ idouble: 1
 
 # Maximal error of functions:
 Function: "atan2":
-float: 3
-ifloat: 3
+float: 6
+ifloat: 6
 
 Function: "atanh":
 float: 1
index b40d2fbd573bef201be386186cb0c0d7f4e62dcd..ff7ea8aa41017b02ac436d2a27380ee70cf290b8 100644 (file)
@@ -671,10 +671,6 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
 #define DL_STACK_END(cookie) \
   ((void *) (((long) (cookie)) - (22 - 6) * 8 - STACK_BIAS))
 
-/* _dl_argv cannot be attribute_relro, because _dl_start_user below
-   might write into it after _dl_start returns.  */
-#define DL_ARGV_NOT_RELRO 1
-
 /* Initial entry point code for the dynamic linker.
    The C function `_dl_start' is the real entry point;
    its return value is the user program's entry point.  */
This page took 0.072009 seconds and 5 git commands to generate.