aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/rs6000/sysv4.h
diff options
context:
space:
mode:
authorLynn Boger <laboger@linux.vnet.ibm.com>2015-09-30 18:06:11 -0500
committerIan Lance Taylor <ian@gcc.gnu.org>2015-09-30 23:06:11 +0000
commit402565b61f9783473472fcfd729efa8c1e355d2b (patch)
tree37eb8b2f85d9a656044717d6a82ffa026692d05c /gcc/config/rs6000/sysv4.h
parent7dc396e20f0efa59cad65d95d53ff1541d9ae807 (diff)
downloadgcc-402565b61f9783473472fcfd729efa8c1e355d2b.zip
gcc-402565b61f9783473472fcfd729efa8c1e355d2b.tar.gz
gcc-402565b61f9783473472fcfd729efa8c1e355d2b.tar.bz2
re PR go/66870 (split stack issues on ppc64le and ppc64)
PR target/66870 * config/rs6000/sysv4.h (TARGET_CAN_SPLIT_STACK_64BIT): Define. * configure.ac: Define HAVE_GOLD_ALTERNATE_SPLIT_STACK on Power based on gold linker version. * gcc.c: Add -fuse-ld=gold to STACK_SPLIT_SPEC if HAVE_GOLD_ALTERNATE_SPLIT_STACK defined. * configure, config.in: Regenerate. go: * gospec.c (lang_specific_driver): Set appropriate split stack options for 64 bit compiles based on TARGET_CAN_SPLIT_STACK_64BIT. From-SVN: r228311
Diffstat (limited to 'gcc/config/rs6000/sysv4.h')
-rw-r--r--gcc/config/rs6000/sysv4.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index f48af43..7b2f9bd 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -940,6 +940,14 @@ ncrtn.o%s"
#undef TARGET_ASAN_SHADOW_OFFSET
#define TARGET_ASAN_SHADOW_OFFSET rs6000_asan_shadow_offset
+/* On ppc64 and ppc64le, split stack is only support for
+ 64 bit. */
+#undef TARGET_CAN_SPLIT_STACK_64BIT
+#if TARGET_GLIBC_MAJOR > 2 \
+ || (TARGET_GLIBC_MAJOR == 2 && TARGET_GLIBC_MINOR >= 18)
+#define TARGET_CAN_SPLIT_STACK_64BIT
+#endif
+
/* This target uses the sysv4.opt file. */
#define TARGET_USES_SYSV4_OPT 1