aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/powerpc/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/powerpc/Makefile')
-rw-r--r--sysdeps/powerpc/Makefile11
1 files changed, 11 insertions, 0 deletions
diff --git a/sysdeps/powerpc/Makefile b/sysdeps/powerpc/Makefile
index f2d3271925..f7ed25002a 100644
--- a/sysdeps/powerpc/Makefile
+++ b/sysdeps/powerpc/Makefile
@@ -1,3 +1,8 @@
+# We always want to use the new mnemonic syntax even if we are on a RS6000
+# machine.
++cflags += -mnew-mnemonics -Wa,-mppc -mpowerpc
+asm-CPPFLAGS += -Wa,-mppc
+
ifeq ($(subdir),math)
libm-support += fenv_const fe_nomask
endif
@@ -6,6 +11,10 @@ ifeq ($(subdir),gmon)
sysdep_routines += ppc-mcount
endif
+ifeq ($(subdir),misc)
+sysdep_routines += gprsave0 gprrest0 gprsave1 gprrest1
+endif
+
# On PPC, -fpic works until the GOT contains 2^15 bytes, and possibly
# more depending on how clever the linker is. Each GOT entry takes 4 bytes,
# so that's at least 8192 entries. Since libc only uses about 2000 entries,
@@ -15,6 +24,7 @@ pic-ccflag = -fpic
endif
ifeq ($(subdir),csu)
+ifneq ($(elf),no)
# The initfini generation code doesn't work in the presence of -fPIC, so
# we use -fpic instead which is much better.
CFLAGS-initfini.s = -g0 -fpic
@@ -24,6 +34,7 @@ CFLAGS-initfini.s = -g0 -fpic
CFLAGS-init.o = -G0
CFLAGS-gmon-start.o = -G0
endif
+endif
ifeq ($(subdir),string)
CFLAGS-memcmp.c += -Wno-uninitialized