This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch master updated. glibc-2.24-310-g6b1df8b
- From: fw at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 28 Oct 2016 15:11:57 -0000
- Subject: GNU C Library master sources branch master updated. glibc-2.24-310-g6b1df8b
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".
The branch, master has been updated
via 6b1df8b27f7c48d3933b152c0edc9493b199df84 (commit)
from a0f83f0b4f3a0008bf98bd416bc6a2b7a5256622 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=6b1df8b27f7c48d3933b152c0edc9493b199df84
commit 6b1df8b27f7c48d3933b152c0edc9493b199df84
Author: Florian Weimer <fweimer@redhat.com>
Date: Fri Oct 28 17:04:57 2016 +0200
i386: Support CFLAGS which imply -fno-omit-frame-pointer [BZ #20729]
diff --git a/ChangeLog b/ChangeLog
index 0034c74..b5626ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,29 @@
2016-10-28 Florian Weimer <fweimer@redhat.com>
+ [BZ #20729]
+ Support i386 builds with CFLAGS which imply -fno-omit-frame-pointer.
+ * sysdeps/unix/sysv/linux/i386/Makefile
+ (uses-6-syscall-arguments): Define.
+ [subdir == misc] (CFLAGS-epoll_pwait.o, CFLAGS-epoll_pwait.os)
+ (CFLAGS-mmap.o, CFLAGS-mmap.os, CFLAGS-mmap64.o, CFLAGS-mmap64.os)
+ (CFLAGS-pselect.o, CFLAGS-pselect.os, CFLAGS-rtld-mmap.os): Use it.
+ [subdir = sysvipc] (CFLAGS-semtimedop.o, CFLAGS-semtimedop.os):
+ Likewise.
+ [subdir = io] (CFLAGS-posix_fadvise64.o, CFLAGS-posix_fadvise64.os)
+ (CFLAGS-posix_fallocate.o, CFLAGS-posix_fallocate.os)
+ (CFLAGS-posix_fallocate64.o, CFLAGS-posix_fallocate64.os)
+ (CFLAGS-sync_file_range.o, CFLAGS-sync_file_range.os)
+ (CFLAGS-fallocate.o, CFLAGS-fallocate.os, CFLAGS-fallocate64.o)
+ (CFLAGS-fallocate64.os): Likewise.
+ [subdir = nptl] (CFLAGS-pthread_rwlock_timedrdlock.o)
+ (CFLAGS-pthread_rwlock_timedrdlock.os)
+ (CFLAGS-pthread_rwlock_timedwrlock.o)
+ (CFLAGS-pthread_rwlock_timedwrlock.os, CFLAGS-sem_wait.o)
+ (CFLAGS-sem_wait.os, CFLAGS-sem_timedwait.o)
+ (CFLAGS-sem_timedwait.os): Likewise.
+
+2016-10-28 Florian Weimer <fweimer@redhat.com>
+
* elf/tst-linkall-static.c: New file.
* elf/Makefile (tests-static): Add tst-linkall-static.
(tst-linkall-static): Link against static libraries.
diff --git a/sysdeps/unix/sysv/linux/i386/Makefile b/sysdeps/unix/sysv/linux/i386/Makefile
index 6073a9f..2596cdf 100644
--- a/sysdeps/unix/sysv/linux/i386/Makefile
+++ b/sysdeps/unix/sysv/linux/i386/Makefile
@@ -1,21 +1,26 @@
# The default ABI is 32.
default-abi := 32
+# %ebp is used to pass the 6th argument to system calls, so these
+# system calls are incompatible with a frame pointer.
+uses-6-syscall-arguments = -fomit-frame-pointer
+
ifeq ($(subdir),misc)
sysdep_routines += ioperm iopl vm86
-# %ebp may be used to pass the 6th argument to syscall.
-CFLAGS-epoll_pwait.o += -fomit-frame-pointer
-CFLAGS-epoll_pwait.os += -fomit-frame-pointer
-CFLAGS-mmap.o += -fomit-frame-pointer
-CFLAGS-mmap.os += -fomit-frame-pointer
-CFLAGS-mmap64.o += -fomit-frame-pointer
-CFLAGS-mmap64.os += -fomit-frame-pointer
+CFLAGS-epoll_pwait.o += $(uses-6-syscall-arguments)
+CFLAGS-epoll_pwait.os += $(uses-6-syscall-arguments)
+CFLAGS-mmap.o += $(uses-6-syscall-arguments)
+CFLAGS-mmap.os += $(uses-6-syscall-arguments)
+CFLAGS-mmap64.o += $(uses-6-syscall-arguments)
+CFLAGS-mmap64.os += $(uses-6-syscall-arguments)
+CFLAGS-pselect.o += $(uses-6-syscall-arguments)
+CFLAGS-pselect.os += $(uses-6-syscall-arguments)
+CFLAGS-rtld-mmap.os += $(uses-6-syscall-arguments)
endif
ifeq ($(subdir),sysvipc)
-# %ebp may be used to pass the 6th argument to syscall.
-CFLAGS-semtimedop.o += -fomit-frame-pointer
-CFLAGS-semtimedop.os += -fomit-frame-pointer
+CFLAGS-semtimedop.o += $(uses-6-syscall-arguments)
+CFLAGS-semtimedop.os += $(uses-6-syscall-arguments)
endif
ifeq ($(subdir),elf)
@@ -23,12 +28,22 @@ sysdep-others += lddlibc4
install-bin += lddlibc4
endif
-# fallocate, posix_fallocate use six-argument inline syscalls.
ifeq ($(subdir),io)
sysdep_routines += libc-do-syscall
+CFLAGS-posix_fadvise64.o += $(uses-6-syscall-arguments)
+CFLAGS-posix_fadvise64.os += $(uses-6-syscall-arguments)
+CFLAGS-posix_fallocate.o += $(uses-6-syscall-arguments)
+CFLAGS-posix_fallocate.os += $(uses-6-syscall-arguments)
+CFLAGS-posix_fallocate64.o += $(uses-6-syscall-arguments)
+CFLAGS-posix_fallocate64.os += $(uses-6-syscall-arguments)
+CFLAGS-sync_file_range.o += $(uses-6-syscall-arguments)
+CFLAGS-sync_file_range.os += $(uses-6-syscall-arguments)
+CFLAGS-fallocate.o += $(uses-6-syscall-arguments)
+CFLAGS-fallocate.os += $(uses-6-syscall-arguments)
+CFLAGS-fallocate64.o += $(uses-6-syscall-arguments)
+CFLAGS-fallocate64.os += $(uses-6-syscall-arguments)
endif
-# libpthread uses six-argument inline syscalls.
ifeq ($(subdir),nptl)
libpthread-sysdep_routines += libc-do-syscall
libpthread-shared-only-routines += libc-do-syscall
@@ -50,6 +65,14 @@ ifeq ($(subdir),nptl)
# pull in __syscall_error routine
libpthread-routines += sysdep
libpthread-shared-only-routines += sysdep
+CFLAGS-pthread_rwlock_timedrdlock.o += $(uses-6-syscall-arguments)
+CFLAGS-pthread_rwlock_timedrdlock.os += $(uses-6-syscall-arguments)
+CFLAGS-pthread_rwlock_timedwrlock.o += $(uses-6-syscall-arguments)
+CFLAGS-pthread_rwlock_timedwrlock.os += $(uses-6-syscall-arguments)
+CFLAGS-sem_wait.o += $(uses-6-syscall-arguments)
+CFLAGS-sem_wait.os += $(uses-6-syscall-arguments)
+CFLAGS-sem_timedwait.o += $(uses-6-syscall-arguments)
+CFLAGS-sem_timedwait.os += $(uses-6-syscall-arguments)
endif
ifeq ($(subdir),rt)
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 24 +++++++++++++++++
sysdeps/unix/sysv/linux/i386/Makefile | 47 ++++++++++++++++++++++++--------
2 files changed, 59 insertions(+), 12 deletions(-)
hooks/post-receive
--
GNU C Library master sources