[GOLD] Set non-exec stack for ppc64
authorAlan Modra <amodra@gmail.com>
Fri, 22 Sep 2017 01:34:41 +0000 (11:04 +0930)
committerAlan Modra <amodra@gmail.com>
Fri, 22 Sep 2017 02:17:02 +0000 (11:47 +0930)
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.

gold/ChangeLog
gold/powerpc.cc

index 7e62ccb0893ea8c616d3b52c9746498e12306d8f..b805b812f7fbb3d6479c0ec48bc47a5422a4ed0f 100644 (file)
@@ -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
index ba302f27357f184d5d7fc575c944eee8f09745f8..c529dbf49275e4e088acc0f147e1f6049de1bc47 100644 (file)
@@ -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