Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src Some architectures can't create unwind tables without the fr...
details: https://anonhg.NetBSD.org/src/rev/5758045baa29
branches: trunk
changeset: 789278:5758045baa29
user: joerg <joerg%NetBSD.org@localhost>
date: Mon Aug 12 17:15:46 2013 +0000
description:
Some architectures can't create unwind tables without the frame pointer,
so don't use -fomit-frame-pointer on those.
diffstat:
lib/libpthread/Makefile | 15 +++++++++++----
libexec/ld.elf_so/Makefile | 8 ++++++--
2 files changed, 17 insertions(+), 6 deletions(-)
diffs (63 lines):
diff -r 556e4f74b960 -r 5758045baa29 lib/libpthread/Makefile
--- a/lib/libpthread/Makefile Mon Aug 12 16:51:14 2013 +0000
+++ b/lib/libpthread/Makefile Mon Aug 12 17:15:46 2013 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.80 2013/03/21 16:49:11 christos Exp $
+# $NetBSD: Makefile,v 1.81 2013/08/12 17:15:46 joerg Exp $
#
WARNS?= 5
@@ -75,21 +75,28 @@
ALIGN_FUNCTIONS= ${${ACTIVE_CC} == "gcc":? -falign-functions=32 :}
+.if ${MACHINE_ARCH} == "m68k" || ${MACHINE_ARCH} == "m68000" || \
+ ${MACHINE_CPU} == "sh3" || ${MACHINE_ARCH} == "vax"
+OMIT_FRAME_POINTER=
+.else
+OMIT_FRAME_POINTER= -fomit-frame-pointer
+.endif
+
# The TSD routines are used in the implementation of profiling, and so
# can't be profiled themselves.
-COPTS.pthread_specific.c+= -fomit-frame-pointer ${ALIGN_FUNCTIONS}
+COPTS.pthread_specific.c+= ${OMIT_FRAME_POINTER} ${ALIGN_FUNCTIONS}
pthread_specific.po: pthread_specific.o
${_MKTARGET_CREATE}
cp pthread_specific.o pthread_specific.po
# Internal spinlock routines are performance critical. Don't profile them,
# it's incompatibile with -fomit-frame-pointer.
-COPTS.pthread_lock.c+= -fomit-frame-pointer ${ALIGN_FUNCTIONS}
+COPTS.pthread_lock.c+= ${OMIT_FRAME_POINTER} ${ALIGN_FUNCTIONS}
pthread_lock.po: pthread_lock.o
${_MKTARGET_CREATE}
cp pthread_lock.o pthread_lock.po
-COPTS.pthread_mutex.c+= -fomit-frame-pointer ${ALIGN_FUNCTIONS}
+COPTS.pthread_mutex.c+= ${OMIT_FRAME_POINTER} ${ALIGN_FUNCTIONS}
pthread_mutex.po: pthread_mutex.o
${_MKTARGET_CREATE}
cp pthread_mutex.o pthread_mutex.po
diff -r 556e4f74b960 -r 5758045baa29 libexec/ld.elf_so/Makefile
--- a/libexec/ld.elf_so/Makefile Mon Aug 12 16:51:14 2013 +0000
+++ b/libexec/ld.elf_so/Makefile Mon Aug 12 17:15:46 2013 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.121 2013/07/18 21:58:13 matt Exp $
+# $NetBSD: Makefile,v 1.122 2013/08/12 17:15:46 joerg Exp $
#
# NOTE: when changing ld.so, ensure that ldd still compiles.
#
@@ -98,7 +98,11 @@
CPPFLAGS+= -I${NETBSDSRCDIR}/lib/libexecinfo
.endif
#DBG= -g
-COPTS+= -O3 -fomit-frame-pointer
+COPTS+= -O3
+
+.if ${MACHINE_ARCH} != "m68k" && ${MACHINE_CPU} != "sh3" && ${MACHINE_ARCH} != "vax"
+COPTS+= -fomit-frame-pointer
+.endif
.if ${LDELFSO_MACHINE_ARCH} == "i386" || ${LDELFSO_MACHINE_ARCH} == "x86_64"
COPTS+= -mno-3dnow -mno-mmx -mno-sse -mno-sse2 -mno-sse3
Home |
Main Index |
Thread Index |
Old Index