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.
+2015-08-19 H.J. Lu <hongjiu.lu@intel.com>
+
+ [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.
+
2015-08-19 H.J. Lu <hongjiu.lu@intel.com>
* sysdeps/i386/i686/Makefile
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). */
ret
PSEUDO_END(__setcontext)
+libc_hidden_def (__setcontext)
weak_alias (__setcontext, setcontext)