about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/i386
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-12-20 07:12:24 +0000
committerUlrich Drepper <drepper@redhat.com>2002-12-20 07:12:24 +0000
commit097eca29e8f769673b5ed1b335542719280a556e (patch)
treeaa70ad74f87ac91b5686399c41c2ff9ffbbe877e /sysdeps/unix/sysv/linux/i386
parent5f5843e30dda46ffc443c492959e206530837c98 (diff)
downloadglibc-097eca29e8f769673b5ed1b335542719280a556e.tar.gz
glibc-097eca29e8f769673b5ed1b335542719280a556e.tar.xz
glibc-097eca29e8f769673b5ed1b335542719280a556e.zip
Update.
	* sysdeps/unix/sysv/linux/i386/pthread_once.S: Use ENTER_KERNEL instead
	of int $0x80.
	* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Likewise.

	* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Add support for using
	sysenter.
	* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Likewise.

	* sysdeps/i386/tls.h: Unconditionally include <dl-sysdep.h>.
Diffstat (limited to 'sysdeps/unix/sysv/linux/i386')
-rw-r--r--sysdeps/unix/sysv/linux/i386/_exit.S4
-rw-r--r--sysdeps/unix/sysv/linux/i386/getcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/i386/setcontext.S4
-rw-r--r--sysdeps/unix/sysv/linux/i386/swapcontext.S4
4 files changed, 9 insertions, 7 deletions
diff --git a/sysdeps/unix/sysv/linux/i386/_exit.S b/sysdeps/unix/sysv/linux/i386/_exit.S
index 5b4f8b1619..5c2e588409 100644
--- a/sysdeps/unix/sysv/linux/i386/_exit.S
+++ b/sysdeps/unix/sysv/linux/i386/_exit.S
@@ -27,11 +27,13 @@ _exit:
 	/* Try the new syscall first.  */
 #ifdef __NR_exit_group
 	movl	$__NR_exit_group, %eax
-	int	$0x80
+	ENTER_KERNEL
 #endif
 
 	/* Not available.  Now the old one.  */
 	movl	$__NR_exit, %eax
+	/* Don't bother using ENTER_KERNEL here.  If the exit_group
+	   syscall is not available AT_SYSINFO isn't either.  */
 	int	$0x80
 
 	/* This must not fail.  Be sure we don't return.  */
diff --git a/sysdeps/unix/sysv/linux/i386/getcontext.S b/sysdeps/unix/sysv/linux/i386/getcontext.S
index 600a886863..9db129f5a6 100644
--- a/sysdeps/unix/sysv/linux/i386/getcontext.S
+++ b/sysdeps/unix/sysv/linux/i386/getcontext.S
@@ -1,5 +1,5 @@
 /* Save current context.
-   Copyright (C) 2001 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
 
@@ -63,7 +63,7 @@ ENTRY(__getcontext)
 	xorl	%ecx, %ecx
 	movl	$SIG_BLOCK, %ebx
 	movl	$__NR_sigprocmask, %eax
-	int	$0x80
+	ENTER_KERNEL
 	popl	%ebx
 	cmpl	$-4095, %eax		/* Check %eax for error.  */
 	jae	SYSCALL_ERROR_LABEL	/* Jump to error handler if error.  */
diff --git a/sysdeps/unix/sysv/linux/i386/setcontext.S b/sysdeps/unix/sysv/linux/i386/setcontext.S
index 58a122fc28..cbe9f08ce5 100644
--- a/sysdeps/unix/sysv/linux/i386/setcontext.S
+++ b/sysdeps/unix/sysv/linux/i386/setcontext.S
@@ -1,5 +1,5 @@
 /* Install given context.
-   Copyright (C) 2001 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
 
@@ -35,7 +35,7 @@ ENTRY(__setcontext)
 	leal	oSIGMASK(%eax), %ecx
 	movl	$SIG_SETMASK, %ebx
 	movl	$__NR_sigprocmask, %eax
-	int	$0x80
+	ENTER_KERNEL
 	popl	%ebx
 	cmpl	$-4095, %eax		/* Check %eax for error.  */
 	jae	SYSCALL_ERROR_LABEL	/* Jump to error handler if error.  */
diff --git a/sysdeps/unix/sysv/linux/i386/swapcontext.S b/sysdeps/unix/sysv/linux/i386/swapcontext.S
index 0c249437a5..e44e9301b0 100644
--- a/sysdeps/unix/sysv/linux/i386/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/i386/swapcontext.S
@@ -1,5 +1,5 @@
 /* Save current context and install the given one.
-   Copyright (C) 2001 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
 
@@ -65,7 +65,7 @@ ENTRY(__swapcontext)
 	leal	oSIGMASK(%ecx), %ecx
 	movl	$SIG_SETMASK, %ebx
 	movl	$__NR_sigprocmask, %eax
-	int	$0x80
+	ENTER_KERNEL
 	popl	%ebx
 	cmpl	$-4095, %eax		/* Check %eax for error.  */
 	jae	SYSCALL_ERROR_LABEL	/* Jump to error handler if error.  */