1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

Call __setcontext with HIDDEN_JUMPTARGET

i386 __makecontext should call __setcontext with HIDDEN_JUMPTARGET.

	[BZ #18822]
	* sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext):
	Don't load %ebx when calling __setcontext.  Call __setcontext
	with HIDDEN_JUMPTARGET.
	* sysdeps/unix/sysv/linux/i386/setcontext.S (__setcontext): Add
	libc_hidden_def.
This commit is contained in:
H.J. Lu
2015-08-19 04:39:47 -07:00
parent 3552daa7ac
commit 7e58ab243d
3 changed files with 11 additions and 6 deletions

View File

@ -102,15 +102,10 @@ L(exitcode):
parameters (see above). */
leal (%esp,%ebx,4), %esp
#ifdef PIC
call 1f
1: popl %ebx
addl $_GLOBAL_OFFSET_TABLE_+[.-1b], %ebx
#endif
cmpl $0, (%esp) /* Check the next context. */
je 2f /* If it is zero exit. */
call JUMPTARGET(__setcontext)
call HIDDEN_JUMPTARGET(__setcontext)
/* If this returns (which can happen if the syscall fails) we'll
exit the program with the return error value (-1). */

View File

@ -91,5 +91,6 @@ ENTRY(__setcontext)
ret
PSEUDO_END(__setcontext)
libc_hidden_def (__setcontext)
weak_alias (__setcontext, setcontext)