summaryrefslogtreecommitdiffstats
path: root/arch/tile/lib/Makefile
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@tilera.com>2013-08-12 15:00:51 -0400
committerChris Metcalf <cmetcalf@tilera.com>2013-09-03 14:52:09 -0400
commit49cf78ef7bb34833496d59b6dfe84ae51b1ab097 (patch)
tree8c4931de01fd8e6e861cf38e520f40ef1e5143f4 /arch/tile/lib/Makefile
parent80f184108e364ba1d08dd77339966034c9a9243e (diff)
downloadlinux-49cf78ef7bb34833496d59b6dfe84ae51b1ab097.tar.bz2
tile: support FRAME_POINTER
Allow enabling frame pointer support; this makes it easier to hook into the various kernel features that claim they require it without having to add Kconfig conditionals everywhere (a la mips, ppc, s390, and microblaze). When enabled, it basically eliminates leaf functions as such, and stops optimizing tail and sibling calls. It adds around 3% to the size of the kernel when enabled. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Diffstat (limited to 'arch/tile/lib/Makefile')
-rw-r--r--arch/tile/lib/Makefile14
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/tile/lib/Makefile b/arch/tile/lib/Makefile
index 5d844374b2b1..9adfd76fbdd8 100644
--- a/arch/tile/lib/Makefile
+++ b/arch/tile/lib/Makefile
@@ -6,13 +6,13 @@ lib-y = cacheflush.o checksum.o cpumask.o delay.o uaccess.o \
memmove.o memcpy_$(BITS).o memchr_$(BITS).o memset_$(BITS).o \
strchr_$(BITS).o strlen_$(BITS).o strnlen_$(BITS).o
-ifeq ($(CONFIG_TILEGX),y)
-CFLAGS_REMOVE_memcpy_user_64.o = -fno-omit-frame-pointer
-lib-y += memcpy_user_64.o
-else
-lib-y += atomic_32.o atomic_asm_32.o memcpy_tile64.o
-endif
-
+lib-$(CONFIG_TILEGX) += memcpy_user_64.o
+lib-$(CONFIG_TILEPRO) += atomic_32.o atomic_asm_32.o memcpy_tile64.o
lib-$(CONFIG_SMP) += spinlock_$(BITS).o usercopy_$(BITS).o
obj-$(CONFIG_MODULES) += exports.o
+
+# The finv_buffer_remote() and copy_{to,from}_user() routines can't
+# have -pg added, since they both rely on being leaf functions.
+CFLAGS_REMOVE_cacheflush.o = -pg
+CFLAGS_REMOVE_memcpy_user_64.o = -pg