diff options
author | Alan Modra <amodra@bigpond.net.au> | 2001-10-09 06:05:17 +0000 |
---|---|---|
committer | Alan Modra <amodra@bigpond.net.au> | 2001-10-09 06:05:17 +0000 |
commit | f1bffdafb9d51746d4a92616d491a1fc2fa9c8bc (patch) | |
tree | a2a03dded1c7a999c8d38a2fdf9b6f7eceaddc40 /bfd/elf-bfd.h | |
parent | 71d5dcce922f0d165b53e7e9f81309e4ac4c0c8d (diff) | |
download | gdb-f1bffdafb9d51746d4a92616d491a1fc2fa9c8bc.tar.gz |
* elf-bfd.h (struct bfd_elf_section_data): Add "group" and
"next_in_group". Fix gp and gp_size comments.
* elf.c (union elf_internal_group): New.
(setup_group): New function.
(_bfd_elf_make_section_from_shdr): Set BFD flags for SHT_GROUP.
Call setup_group for SHF_GROUP sections.
(bfd_section_from_shdr): Build a BFD section for SHT_GROUP.
(elf_fake_sections): Set header type for SEC_GROUP, and header
flags for sections in a group.
(set_group_contents): New function.
(_bfd_elf_compute_section_file_positions): Call it.
(assign_section_numbers): Set sh_link for SHT_GROUP.
* elflink.h (gc_mark_hook): Handle section groups.
* elfxx-target.h: Add SEC_GROUP to applicable_flags.
* section.c (SEC_GROUP): Define.
(struct sec): Comment fixes.
* bfd-in2.h: Regenerate.
* elf.c (bfd_elf_print_symbol): Formatting fix; migrate expression
out of function args.
(_bfd_elf_canonicalize_reloc): Similarly.
(_bfd_elf_get_symtab): Here too.
(_bfd_elf_canonicalize_dynamic_symtab): And here.
* elfcode.h (elf_slurp_symbol_table): Don't recalculate size for
bfd_bread, and remove unnecessary cast.
Diffstat (limited to 'bfd/elf-bfd.h')
-rw-r--r-- | bfd/elf-bfd.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/bfd/elf-bfd.h b/bfd/elf-bfd.h index 5b2da987769..50c8b2b5dd9 100644 --- a/bfd/elf-bfd.h +++ b/bfd/elf-bfd.h @@ -815,6 +815,13 @@ struct bfd_elf_section_data /* A pointer used for SEC_MERGE optimizations. */ PTR merge_info; + /* Group name, if this section is part of a group. */ + const char *group; + + /* A linked list of sections in the group. Circular when used by + the linker. */ + asection *next_in_group; + /* A pointer available for the processor specific ELF backend. */ PTR tdata; @@ -905,8 +912,11 @@ struct elf_obj_tdata void *prstatus; /* The raw /proc prstatus structure */ void *prpsinfo; /* The raw /proc prpsinfo structure */ #endif - bfd_vma gp; /* The gp value (MIPS only, for now) */ - unsigned int gp_size; /* The gp size (MIPS only, for now) */ + bfd_vma gp; /* The gp value */ + unsigned int gp_size; /* The gp size */ + + Elf_Internal_Shdr **group_sect_ptr; + int num_group; /* Information grabbed from an elf core file. */ int core_signal; |