diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2018-03-10 09:27:04 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2018-03-10 09:27:20 -0800 |
commit | 6253bacdc00de132dec452ff7c6ce3ba7fa23d81 (patch) | |
tree | 30b25d5aa1c776b157606e5389fcc566e16fd9f0 | |
parent | 229855e5983881812b21b215346cb990722c6023 (diff) | |
download | glibc-6253bacdc00de132dec452ff7c6ce3ba7fa23d81.tar.gz glibc-6253bacdc00de132dec452ff7c6ce3ba7fa23d81.tar.xz glibc-6253bacdc00de132dec452ff7c6ce3ba7fa23d81.zip |
Remove hidden __libc_longjmp
Since __libc_longjmp is a private interface for cancellation implementation in libpthread, there is no need to provide hidden __libc_longjmp in libc. Tested with build-many-glibcs.py. * include/setjmp.h (__libc_longjmp): Remove libc_hidden_proto. * setjmp/longjmp.c (__libc_longjmp): Remove libc_hidden_def. * sysdeps/s390/longjmp.c (__libc_longjmp): Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S (__libc_longjmp): Likewise.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | include/setjmp.h | 1 | ||||
-rw-r--r-- | setjmp/longjmp.c | 3 | ||||
-rw-r--r-- | sysdeps/s390/longjmp.c | 1 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S | 1 |
5 files changed, 10 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index 0f71d41b0a..8490083ead 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2018-03-10 H.J. Lu <hongjiu.lu@intel.com> + + * include/setjmp.h (__libc_longjmp): Remove libc_hidden_proto. + * setjmp/longjmp.c (__libc_longjmp): Remove libc_hidden_def. + * sysdeps/s390/longjmp.c (__libc_longjmp): Likewise. + * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S (__libc_longjmp): + Likewise. + 2018-03-09 Florian Weimer <fweimer@redhat.com> * malloc/malloc.c (prev_size, set_prev_size, prev_chunk): Fix typo diff --git a/include/setjmp.h b/include/setjmp.h index f1b19f5ceb..263bc64b3d 100644 --- a/include/setjmp.h +++ b/include/setjmp.h @@ -23,7 +23,6 @@ extern void __libc_siglongjmp (sigjmp_buf env, int val) __attribute__ ((noreturn)); extern void __libc_longjmp (sigjmp_buf env, int val) __attribute__ ((noreturn)); -libc_hidden_proto (__libc_longjmp) libc_hidden_proto (_setjmp) libc_hidden_proto (__sigsetjmp) diff --git a/setjmp/longjmp.c b/setjmp/longjmp.c index 6b4737605a..a2a7065a85 100644 --- a/setjmp/longjmp.c +++ b/setjmp/longjmp.c @@ -40,8 +40,9 @@ __libc_siglongjmp (sigjmp_buf env, int val) } #ifndef __libc_siglongjmp +/* __libc_longjmp is a private interface for cancellation implementation + in libpthread. */ strong_alias (__libc_siglongjmp, __libc_longjmp) -libc_hidden_def (__libc_longjmp) weak_alias (__libc_siglongjmp, _longjmp) weak_alias (__libc_siglongjmp, longjmp) weak_alias (__libc_siglongjmp, siglongjmp) diff --git a/sysdeps/s390/longjmp.c b/sysdeps/s390/longjmp.c index 6343c261b5..e61cdba2a3 100644 --- a/sysdeps/s390/longjmp.c +++ b/sysdeps/s390/longjmp.c @@ -33,7 +33,6 @@ but were reverted before 2.20. Thus both versions are the same function. */ strong_alias (__libc_siglongjmp, __libc_longjmp) -libc_hidden_def (__libc_longjmp) weak_alias (__libc_siglongjmp, __v1_longjmp) weak_alias (__libc_siglongjmp, __v2_longjmp) diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S b/sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S index 208c6db3a9..5937396fc7 100644 --- a/sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S @@ -45,7 +45,6 @@ END(__libc_siglongjmp) strong_alias(__libc_siglongjmp, __longjmp) strong_alias(__libc_siglongjmp, __libc_longjmp) -libc_hidden_def (__libc_longjmp) weak_alias (__libc_siglongjmp, longjmp) weak_alias (__libc_siglongjmp, _longjmp) weak_alias (__libc_siglongjmp, siglongjmp) |