aboutsummaryrefslogtreecommitdiff
path: root/ld/lexsup.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2022-05-20 14:59:05 +0930
committerAlan Modra <amodra@gmail.com>2022-05-20 16:11:25 +0930
commitbd7d326debef642c0a98f859807d794d8d68afc7 (patch)
treee590bc7d3c850d6742191d435ada233a4631e50c /ld/lexsup.c
parentef5d515048ba13a06815c8fccc420e6e8098da03 (diff)
downloadfsf-binutils-gdb-bd7d326debef642c0a98f859807d794d8d68afc7.zip
fsf-binutils-gdb-bd7d326debef642c0a98f859807d794d8d68afc7.tar.gz
fsf-binutils-gdb-bd7d326debef642c0a98f859807d794d8d68afc7.tar.bz2
Tidy warn-execstack handling
Make ld and bfd values consistent by swapping values 0 and 2 in link_info.warn_execstack. This has the benefit of making the value an "extended" boolean, with 0 meaning no warning, 1 meaning warn, other values a conditional warning. Yes, this patch introduces fails on arm/aarch64. Not a problem with this patch but an arm/aarch64 before_parse problem. bfd/ * elflink.c (bfd_elf_size_dynamic_sections): Adjust warn_execstack test. include/ * bfdlink.h (warn_execstack): Swap 0 and 2 meaning. ld/ * configure.ac (DEFAULT_LD_WARN_EXECSTACK): Use values of 0, 1, 2 consistent with link_info.warn_execstack. * ld.texi: Typo fixes. * lexsup.c (parse_args): Adjust setting of link_info.warn_execstack. (elf_static_list_options): Adjust help message conditions. * configure: Regenerate.
Diffstat (limited to 'ld/lexsup.c')
-rw-r--r--ld/lexsup.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ld/lexsup.c b/ld/lexsup.c
index 7819047..82c459a 100644
--- a/ld/lexsup.c
+++ b/ld/lexsup.c
@@ -927,7 +927,7 @@ parse_args (unsigned argc, char **argv)
link_info.warn_execstack = 1;
break;
case OPTION_NO_WARN_EXECSTACK:
- link_info.warn_execstack = 2;
+ link_info.warn_execstack = 0;
break;
case OPTION_WARN_RWX_SEGMENTS:
link_info.no_warn_rwx_segments = 0;
@@ -2169,14 +2169,14 @@ elf_static_list_options (FILE *file)
-z execstack Mark executable as requiring executable stack\n"));
fprintf (file, _("\
-z noexecstack Mark executable as not requiring executable stack\n"));
-#if DEFAULT_LD_WARN_EXECSTACK > 0
+#if DEFAULT_LD_WARN_EXECSTACK == 1
fprintf (file, _("\
--warn-execstack Generate a warning if the stack is executable (default)\n"));
#else
fprintf (file, _("\
--warn-execstack Generate a warning if the stack is executable\n"));
#endif
-#if DEFAULT_LD_WARN_EXECSTACK < 0
+#if DEFAULT_LD_WARN_EXECSTACK == 0
fprintf (file, _("\
--no-warn-execstack Do not generate a warning if the stack is executable (default)\n"));
#else