diff options
author | Andreas Schwab <schwab@redhat.com> | 2009-07-23 18:35:00 +0200 |
---|---|---|
committer | Andreas Schwab <schwab@redhat.com> | 2009-07-23 18:35:00 +0200 |
commit | cae1d96323ba59248eaa9eedcffb6fac7e35a8cc (patch) | |
tree | d24a2c26ec9c0d70d0a52c0a35de786058854984 /sysdeps/unix | |
parent | d4192d9bce9e44adb2da4f2141713df9b335052f (diff) | |
parent | 9b6bf8a30292288c9536efb72d80020f189bf9a6 (diff) | |
download | glibc-cae1d96323ba59248eaa9eedcffb6fac7e35a8cc.tar.gz glibc-cae1d96323ba59248eaa9eedcffb6fac7e35a8cc.tar.xz glibc-cae1d96323ba59248eaa9eedcffb6fac7e35a8cc.zip |
Merge commit 'origin/master' into fedora/master
Conflicts: ChangeLog
Diffstat (limited to 'sysdeps/unix')
-rw-r--r-- | sysdeps/unix/sysv/linux/i386/makecontext.S | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/i386/makecontext.S b/sysdeps/unix/sysv/linux/i386/makecontext.S index ad2340555a..5b98e64db2 100644 --- a/sysdeps/unix/sysv/linux/i386/makecontext.S +++ b/sysdeps/unix/sysv/linux/i386/makecontext.S @@ -1,5 +1,5 @@ /* Create new context. - Copyright (C) 2001, 2002, 2005, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 2001,2002,2005,2007,2008,2009 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <drepper@redhat.com>, 2001. @@ -105,17 +105,15 @@ L(exitcode): 1: popl %ebx addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx #endif - popl %eax /* This is the next context. */ - testl %eax, %eax + cmpl $0, (%esp) /* Check the next context. */ je 2f /* If it is zero exit. */ - pushl %eax call JUMPTARGET(__setcontext) /* If this returns (which can happen if the syscall fails) we'll exit the program with the return error value (-1). */ -2: pushl %eax - call HIDDEN_JUMPTARGET(exit) + movl %eax, (%esp) +2: call HIDDEN_JUMPTARGET(exit) /* The 'exit' call should never return. In case it does cause the process to terminate. */ hlt |