summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2005-08-20 01:22:05 +0000
committerUlrich Drepper <drepper@redhat.com>2005-08-20 01:22:05 +0000
commitd6c7294ed609cbd8597898a1c92141dde23994bc (patch)
treeb2077c19a57c2df853ef6f9ade3fb88d4d2534a4 /sysdeps
parent2a81f17880ff4d75cc6ef3fd4456cc23f28a6ed3 (diff)
downloadglibc-d6c7294ed609cbd8597898a1c92141dde23994bc.tar.gz
glibc-d6c7294ed609cbd8597898a1c92141dde23994bc.tar.xz
glibc-d6c7294ed609cbd8597898a1c92141dde23994bc.zip
* sysdeps/ia64/fpu/libm_error.c (__libm_error_support): Don't abort.
2005-08-17  Robert Love  <rml@novell.com>

	* sysdeps/unix/sysv/linux/sys/inotify.h: Add IN_MOVE_SELF event.

2005-08-19  Bruno Haible  <bruno@clisp.org>

	* intl/localealias.c (read_alias_file): In case of failure, close the
	file descriptor and sort the array before returning.

2005-08-19  Ulrich Drepper  <drepper@redhat.com>

	* malloc/Makefile: Link libmemusage.so with ld.so.
	* malloc/memusage.c: Use atomic operations for all counter and size
	 computations.  Handle thread stacks.
	* sysdeps/generic/memusage.h: Define memusage_cntr_t and
	memusage_size_t.
	* sysdeps/i386/i686/memusage.h: New file.
	* include/atomic.h: Define atomic_max and atomic_min.

	* debug/tst-chk1.c: Add tests for mbstowcs and wcstombs.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/generic/memusage.h18
-rw-r--r--sysdeps/i386/i686/memusage.h22
-rw-r--r--sysdeps/ia64/fpu/libm_error.c8
-rw-r--r--sysdeps/unix/sysv/linux/sys/inotify.h3
4 files changed, 45 insertions, 6 deletions
diff --git a/sysdeps/generic/memusage.h b/sysdeps/generic/memusage.h
index 3057beb6e7..a1205cec52 100644
--- a/sysdeps/generic/memusage.h
+++ b/sysdeps/generic/memusage.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 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
@@ -17,6 +17,9 @@
    02111-1307 USA.  */
 
 
+#include <limits.h>
+#include <atomic.h>
+
 #ifndef GETSP
 # warning "GETSP is not defined for this architecture."
 # define GETSP 0
@@ -33,3 +36,16 @@
     high = usecs >> 32;							      \
   }
 #endif
+
+#if LONG_BIT == 32
+# define memusage_cntr_t uatomic32_t
+#else
+# define memusage_cntr_t uatomic64_t
+#endif
+#ifndef memusage_size_t
+# if LONG_BIT == 32
+#  define memusage_size_t uatomic32_t
+# else
+#  define memusage_size_t uatomic64_t
+# endif
+#endif
diff --git a/sysdeps/i386/i686/memusage.h b/sysdeps/i386/i686/memusage.h
new file mode 100644
index 0000000000..235c3fc725
--- /dev/null
+++ b/sysdeps/i386/i686/memusage.h
@@ -0,0 +1,22 @@
+/* Copyright (C) 2000, 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
+   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.  */
+
+#define GETSP() ({ register uintptr_t stack_ptr asm ("esp"); stack_ptr; })
+#define GETTIME(low,high) asm ("rdtsc" : "=a" (low), "=d" (high))
+
+#include <sysdeps/generic/memusage.h>
diff --git a/sysdeps/ia64/fpu/libm_error.c b/sysdeps/ia64/fpu/libm_error.c
index 24fb406a53..8ef4bb5a73 100644
--- a/sysdeps/ia64/fpu/libm_error.c
+++ b/sysdeps/ia64/fpu/libm_error.c
@@ -81,8 +81,8 @@
 // 12/13/04: Corrected POSIX behavior for exp2_overflow, exp2_underflow,
 //           exp10_overflow, exp10_underflow.  Added ISOC to set errno for
 //           exp10_underflow.
-// 12/14/04: Corrected POSIX behavior for nextafter_overflow, 
-//           nextafter_underflow, nexttoward_overflow, nexttoward_underflow.  
+// 12/14/04: Corrected POSIX behavior for nextafter_overflow,
+//           nextafter_underflow, nexttoward_overflow, nexttoward_underflow.
 //           Added ISOC to set errno for nextafter and nexttoward underflow.
 // 12/15/04: Corrected POSIX behavior for exp, exp2, and exp10 underflow.
 // 03/31/05: Added missing ALIGNIT statement to 6 float constants.
@@ -674,7 +674,7 @@ else if(_LIB_VERSIONIMF==_ISOC_)
          ERRNO_DOMAIN; break;
     }
     default:
-      abort();
+      break;
    }
    return;
 }
@@ -1374,7 +1374,7 @@ switch(input_tag)
       ERRNO_RANGE; break;
    }
   default:
-    abort();
+    break;
 }
 return;
 /* _POSIX_ */
diff --git a/sysdeps/unix/sysv/linux/sys/inotify.h b/sysdeps/unix/sysv/linux/sys/inotify.h
index eab39b88d5..c498fe8f18 100644
--- a/sysdeps/unix/sysv/linux/sys/inotify.h
+++ b/sysdeps/unix/sysv/linux/sys/inotify.h
@@ -47,6 +47,7 @@ struct inotify_event
 #define IN_CREATE	 0x00000100	/* Subfile was created.  */
 #define IN_DELETE	 0x00000200	/* Subfile was deleted.  */
 #define IN_DELETE_SELF	 0x00000400	/* Self was deleted.  */
+#define IN_MOVE_SELF	 0x00000800	/* Self was moved.  */
 
 /* Events sent by the kernel.  */
 #define IN_UNMOUNT	 0x00002000	/* Backing fs was unmounted.  */
@@ -61,7 +62,7 @@ struct inotify_event
 #define IN_ALL_EVENTS	 (IN_ACCESS | IN_MODIFY | IN_ATTRIB | IN_CLOSE_WRITE  \
 			  | IN_CLOSE_NOWRITE | IN_OPEN | IN_MOVED_FROM	      \
 			  | IN_MOVED_TO | IN_CREATE | IN_DELETE		      \
-			  | IN_DELETE_SELF)
+			  | IN_DELETE_SELF | IN_MOVE_SELF)
 
 
 __BEGIN_DECLS