aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2017-09-22 11:04:41 +0930
committerAlan Modra <amodra@gmail.com>2017-09-22 11:47:02 +0930
commitec76901011c5af6a565936d4ad87247c51901b58 (patch)
tree67f490a24b9fd34a8035fc350ec5bdc4e7239c77
parent11bb0c7abcb26fcc4ce75c66c38eca1f7b3e3480 (diff)
downloadgdb-ec76901011c5af6a565936d4ad87247c51901b58.zip
gdb-ec76901011c5af6a565936d4ad87247c51901b58.tar.gz
gdb-ec76901011c5af6a565936d4ad87247c51901b58.tar.bz2
[GOLD] Set non-exec stack for ppc64
gcc doesn't emit stack notes for ELFv1, since ELFv1 never needs an executable stack. Note that ELFv1 is usually big-endian and ELFv2 little-endian, but the ABI is really orthogonal to endiannes. * powerpc.cc (Target_powerpc<64,*>::powerpc_info): Set is_default_stack_executable false.
-rw-r--r--gold/ChangeLog5
-rw-r--r--gold/powerpc.cc4
2 files changed, 7 insertions, 2 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 7e62ccb..b805b81 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,8 @@
+2017-09-22 Alan Modra <amodra@gmail.com>
+
+ * powerpc.cc (Target_powerpc<64,*>::powerpc_info): Set
+ is_default_stack_executable false.
+
2017-09-20 Teresa Johnson <tejohnson@google.com>
* plugin.cc (is_visible_from_outside): Check for export dynamic symbol
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index ba302f2..c529dbf 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -1664,7 +1664,7 @@ Target::Target_info Target_powerpc<64, true>::powerpc_info =
false, // has_make_symbol
true, // has_resolve
false, // has_code_fill
- true, // is_default_stack_executable
+ false, // is_default_stack_executable
false, // can_icf_inline_merge_sections
'\0', // wrap_char
"/usr/lib/ld.so.1", // dynamic_linker
@@ -1692,7 +1692,7 @@ Target::Target_info Target_powerpc<64, false>::powerpc_info =
false, // has_make_symbol
true, // has_resolve
false, // has_code_fill
- true, // is_default_stack_executable
+ false, // is_default_stack_executable
false, // can_icf_inline_merge_sections
'\0', // wrap_char
"/usr/lib/ld.so.1", // dynamic_linker