Alan Modra
|
c38b984508
|
* ld-scripts/empty-aligned.d: Revert last change. Allow more
than one header, just not two PT_LOAD.
* ld-elf/stack.s: Use .long 0 rather than nops.
|
2012-10-24 23:22:48 +00:00 |
|
Nathan Sidwell
|
04c3a75556
|
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:56 +00:00 |
|
Alan Modra
|
53b0eb27a9
|
* ld-elf/sec64k.exp: For frv-linux use "aw" sections.
* ld-elf/seg.d: Cater for GNU_STACK segment.
* ld-elf/symbol1ref.s: Use data section.
* ld-elf/symbol2ref.s: Likewise.
* ld-scripts/empty-address-1.d: Don't run on frv-linux.
* ld-scripts/empty-address-2a.d: Likewise.
* ld-scripts/empty-address-2b.d: Likewise.
* ld-scripts/empty-aligned.d: Likewise.
* ld-elf/extract-symbol-1sym.d: Tolerate extra target supplied syms.
* ld-scripts/sort_b_a-1.d: Likewise.
* ld-scripts/sort_b_a.d: Likewise.
* ld-scripts/sort_b_a_a-1.d: Likewise.
* ld-scripts/sort_b_a_a-2.d: Likewise.
* ld-scripts/sort_b_a_a-3.d: Likewise.
* ld-scripts/sort_b_a_n-1.d: Likewise.
* ld-scripts/sort_b_a_n-2.d: Likewise.
* ld-scripts/sort_b_a_n-3.d: Likewise.
* ld-scripts/sort_b_n-1.d: Likewise.
* ld-scripts/sort_b_n.d: Likewise.
* ld-scripts/sort_b_n_a-1.d: Likewise.
* ld-scripts/sort_b_n_a-2.d: Likewise.
* ld-scripts/sort_b_n_a-3.d: Likewise.
* ld-scripts/sort_b_n_n-1.d: Likewise.
* ld-scripts/sort_b_n_n-2.d: Likewise.
* ld-scripts/sort_b_n_n-3.d: Likewise.
* ld-scripts/sort_no-1.d: Likewise.
* ld-scripts/sort_no-2.d: Likewise.
|
2009-09-09 12:13:42 +00:00 |
|
Alan Modra
|
48733062ff
|
* ld-d10v/default_layout.d: Adjust for section removal.
* ld-elf/empty.s: Define "main".
* ld-elf/frame.exp: Don't run for hppa64 and v850.
* ld-elf/group1.d: xfail various targets.
* ld-elf/merge.d: Likewise.
* ld-elf/merge2.d: Likewise.
* ld-elf/warn1.d: Likewise.
* ld-scripts/defined2.d: Likewise.
* ld-scripts/defined3.d: Likewise.
* ld-scripts/empty-aligned.d: Likewise.
* ld-scripts/size-2.d: Likewise.
* ld-scripts/weak.exp: Likewise.
* ld-selective/sel-dump.exp: Likewise.
* ld-undefined/weak-undef.exp: Likewise.
|
2005-08-18 07:51:08 +00:00 |
|
Alan Modra
|
8bf3b8c251
|
* ld-elf/empty.s: Define "start".
* ld-elf/merge2.d: xfail arc-*-* and dlx-*-*.
* ld-scripts/empty-aligned.s: No .data section.
* ld-scripts/empty-aligned.t: Discard most sections.
* ld-scripts/empty-aligned.d: Adjust.
|
2005-08-15 14:08:58 +00:00 |
|
Alan Modra
|
bdd87c7744
|
* ld-scripts/empty-aligned.t: Adjust alignment expressions so
that no .text? section is kept. Also check setting vma and
lma.
* ld-scripts/empty-aligned.d: Update.
|
2005-06-10 00:44:01 +00:00 |
|
Alan Modra
|
6e81d46e50
|
* ld-scripts/empty-aligned.d: Adjust.
|
2005-06-09 02:06:58 +00:00 |
|
H.J. Lu
|
75ff45898c
|
bfd/
2005-05-17 H.J. Lu <hongjiu.lu@intel.com>
PR 797
* elf32-i386.c (elf_i386_size_dynamic_sections): Also remove
empty sdynbss section.
* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections): Likewise.
ld/
2005-05-17 H.J. Lu <hongjiu.lu@intel.com>
PR 797
* ldexp.c (exp_fold_tree_1): Renamed from exp_fold_tree and
take take a bfd_boolean, mark_used. Ignore assert failure if
mark_used is TRUE.
(exp_fold_tree) Call exp_fold_tree_1 with mark_used == FALSE.
(exp_fold_tree_no_dot): Updated to take a bfd_boolean,
mark_used and pass down.
(fold_unary): Likewise.
(fold_binary): Likewise.
(fold_trinary): Likewise.
(exp_binop): Add FALSE to call to exp_fold_tree_no_dot.
(exp_trinop): Likewise.
(exp_unop): Likewise.
(exp_nameop): Likewise.
(exp_get_vma): Likewise.
(exp_get_fill): Likewise.
(exp_get_abs_int): Likewise.
(fold_name): Likewise. Set SEC_KEEP in output section flags.
(exp_mark_used_section): New.
* ldexp.h (exp_mark_used_section): New.
* ldlang.c (lang_output_section_statement_lookup_1): Set the
ignored field to FALSE.
(lang_mark_used_section_1): New.
(lang_mark_used_section): Call lang_mark_used_section_1.
(strip_excluded_output_sections): Call lang_mark_used_section
and check for unused sections.
(lang_size_sections_1): Skip an output section if it should
be ignored.
(lang_do_assignments_1): Likewise.
(lang_process): Don't call lang_mark_used_section here.
* ldlang.h (lang_output_section_statement_type): Change
all_input_readonly to bitfield. Add ignored.
ld/testsuite/
2005-05-17 H.J. Lu <hongjiu.lu@intel.com>
PR 797
* empty-aligned.d: New file.
* empty-aligned.exp: Likewise.
* empty-aligned.s: Likewise.
* empty-aligned.t: Likewise.
|
2005-05-17 16:43:02 +00:00 |
|