[PATCH] S390: Clean setjmp, longjmp, getcontext symbols.

Stefan Liebler stli@linux.vnet.ibm.com
Tue Oct 13 07:36:00 GMT 2015


Hi,

for each function setjmp, longjmp, getcontext, there exist a symbol 
<func> and a default/versioned symbol <func>@@GLIBC_2.x in the build 
obj-files.
This is wrong because it should only exist an unversioned or a 
default-versioned symbol with the same name in an obj-file.
Glibc can't be build with recent binutils. See the already fixed linker 
bug https://sourceware.org/bugzilla/show_bug.cgi?id=19073.
Nevertheless, this patch cleans this up.

Furthermore the BSD entry points setjmp, _setjmp were marked as weak,
but should be strong as on other architectures.
(see https://sourceware.org/ml/libc-alpha/2014-07/msg00568.html for an 
older discussion with Andreas Schwab)

Some whitespace issues are corrected in sysdeps/s390/s390-64/setjmp.S, 
too. But there is no change in the assembler code.

Bye Stefan

---
2015-10-13  Stefan Liebler  <stli@linux.vnet.ibm.com>

	* sysdeps/s390/longjmp.c (longjmp, _longjmp, siglongjmp):
	Don't create weak aliases,
	because versioned symbols are created later.
	* sysdeps/s390/s390-32/setjmp.S
	(setjmp, _setjmp): Remove weak and rename to an unique name
	in SHARED case due to existing versioned symbols.
	* sysdeps/s390/s390-64/setjmp.S: Likewise.
	* sysdeps/unix/sysv/linux/s390/s390-32/getcontext.S
	(getcontext): Create weak alias only in non SHARED case.
	* sysdeps/unix/sysv/linux/s390/s390-64/getcontext.S: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 20151013_cleanup_setjmp_co.patch
Type: text/x-patch
Size: 7987 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20151013/0a1fc392/attachment.bin>


More information about the Libc-alpha mailing list