Nathan Sidwell
cdc5dd85f1
bfd/
* bfd-in.h (bfd_elf_stack_segment_size): Declare.
* bfd-in2.h: Rebuilt.
* elfxx-target.h (elf_backend_stack_align): New.
(elfNN_bed): Add it.
* elf-bfd.h (struct elf_backend_data): Add stack_align field.
* elf.c (bfd_elf_map_sections_to_segments): Pay attention to
stack_align and stacksize for PT_GNU_STACK segment.
(assign_file_positions_for_non_load_sections): Set p_memsz for
PT_GNU_STACK segment.
(copy_elf_program_header): Copy PT_GNU_STACK size.
* elflink.c (bfd_elf_stack_segment_size): New function, taken from
uclinux backends.
(bfd_elf_size_dynamic_sections): Determine
PT_GNU_STACK requirements after calling backend. Pay attention to
stacksize.
* elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Call
bfd_elf_stack_segment_size.
(elf32_bfinfdpic_modify_program_headers): Delete.
(elf32_bfingfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
here.
(elf_backend_stack_align): Override.
(elf_backend_modify_program_headers): Don't override.
* elf32-frv.c (frvfdpic_always_size_sections): Call
bfd_elf_stack_segment_size.
(elf32_frvfdpic_modify_program_headers): Delete.
(elf32_frvfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
here.
(elf_backend_stack_align): Override.
(elf_backend_modify_program_headers): Don't override.
* elf32-lm32.c (lm32_elf_always_size_sections): Leave
PT_GNU_STACK creation to underlying elf support. Check
__stacksize here for backwards compatibility, and set it if
needed.
(lm32_elf_modify_segment_map): Delete.
(lm32_elf_modify_program_headers): Delete.
(elf_backend_stack_align): Override.
(elf_backend_modify_segment_map): Don't override.
(elf_backend_modify_program_headers): Don't override.
* elf32-sh.c (sh_elf_always_size_sections): Call
bfd_elf_stack_segment_size.
(sh_elf_modify_program_headers): Delete.
(sh_elf_copy_private_data): Don't copy PT_GNU_STACK
here.
(elf_backend_stack_align): Override.
(elf_backend_modify_program_headers): Don't override.
* elf32-tic6x.c (elf32_tic6x_always_size_sections): Call
bfd_elf_stack_segment_size.
(elf32_tic6x_modify_program_headers): Delete.
(elf32_tic6x_copy_private_data): Delete.
(elf_backend_stack_align): Override.
(bfd_elf32_bfd_copy_private_bfd_data): Don't override.
(elf_backend_modify_program_headers): Don't override.
include/
* bfdlink.h (struct bfd_link_info): Add stacksize option.
ld/
* ld.texinfo (stack-size): New option.
* emultempl/elf32.em: Add stack-size option.
ld/testsuite/
* ld-elf/binutils.exp: Add -z stack-size=0.
* ld-elf/elf.exp: Add stack-exec and stack-size tests.
* ld-elf/orphan-region.d: Add stack-size option. Remove xfail.
* ld-elf/stack-exec.rd: New.
* ld-elf/stack-size.rd: New.
* ld-elf/stack.s: New.
* ld-scripts/empty-aligned.d: Add stack-size option.
* ld-sh/fdpic-stack-set.d: New.
* ld-tic6x/shlib-1.rd: Remove __stacksize symbol.
* ld-tic6x/shlib-1b.rd: Likewise.
* ld-tic6x/shlib-1r.rd: Likewise.
* ld-tic6x/shlib-1rb.rd: Likewise.
* ld-tic6x/shlib-app-1.rd: Likewise.
* ld-tic6x/shlib-app-1b.rd: Likewise.
* ld-tic6x/shlib-app-1r.rd: Likewise.
* ld-tic6x/shlib-app-1rb.rd: Likewise.
* ld-tic6x/shlib-noindex.rd: Likewise.
* ld-tic6x/static-app-1.rd: Likewise.
* ld-tic6x/static-app-1b.rd: Likewise.
* ld-tic6x/static-app-1r.rd: Likewise.
* ld-tic6x/static-app-1rb.rd: Likewise.
2012-10-23 09:33:54 +00:00
..
2010-04-15 10:26:09 +00:00
2010-01-06 05:25:24 +00:00
2011-06-02 13:43:23 +00:00
2012-09-12 16:25:49 +00:00
2012-06-23 22:23:43 +00:00
2012-02-23 16:29:56 +00:00
2010-04-15 10:26:09 +00:00
2012-10-15 00:22:35 +00:00
2010-06-10 08:31:20 +00:00
2012-03-08 14:14:52 +00:00
2009-11-18 11:57:44 +00:00
2011-10-22 01:35:29 +00:00
2012-10-23 09:33:54 +00:00
2008-08-25 04:36:03 +00:00
2010-04-15 10:26:09 +00:00
2012-10-23 09:33:54 +00:00
2009-08-16 12:06:21 +00:00
2005-05-10 10:21:13 +00:00
2007-07-17 13:50:23 +00:00
2012-10-10 03:11:22 +00:00
2012-08-13 14:52:48 +00:00
2012-09-06 23:08:07 +00:00
2012-06-08 19:01:23 +00:00
2009-06-01 19:40:32 +00:00
2009-06-01 19:40:32 +00:00
2012-07-13 23:39:46 +00:00
2011-01-03 21:05:50 +00:00
2005-05-10 10:21:13 +00:00
1999-05-03 07:29:06 +00:00
1999-05-03 07:29:06 +00:00
2009-05-25 13:04:40 +00:00
2005-05-10 10:21:13 +00:00
2005-05-10 10:21:13 +00:00
2010-06-10 18:30:17 +00:00
2010-04-15 10:26:09 +00:00
2005-05-10 10:21:13 +00:00
2012-05-24 01:18:15 +00:00
2011-09-28 20:01:37 +00:00
2009-10-07 02:57:27 +00:00
2000-07-05 19:28:05 +00:00
2008-03-25 00:21:18 +00:00
2010-04-15 10:26:09 +00:00
2012-10-10 03:11:22 +00:00
2011-10-22 01:35:29 +00:00
2005-05-10 10:21:13 +00:00
2005-05-10 10:21:13 +00:00
2012-08-24 18:35:35 +00:00
2010-04-15 10:26:09 +00:00
2008-07-07 17:09:31 +00:00
2010-04-15 10:26:09 +00:00
2010-11-17 02:03:39 +00:00
2005-05-10 10:21:13 +00:00
2012-04-10 17:07:28 +00:00
2010-03-23 15:58:51 +00:00
2011-09-28 20:01:37 +00:00
2005-07-12 10:34:51 +00:00
2011-07-25 17:11:44 +00:00
2011-01-03 21:05:50 +00:00
2010-04-15 10:26:09 +00:00
2010-04-15 10:26:09 +00:00