diff options
author | Alan Modra <amodra@gmail.com> | 2022-04-04 21:34:06 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2022-04-09 15:34:24 +0930 |
commit | 57594b6a7538bde26de2d807ff29b0f5e619be03 (patch) | |
tree | 2512939f4e4f82adfe0948e92356a295641a9163 /bfd/bfd-in2.h | |
parent | 480a4dd5f347e441a4e550285b300081152ad4e0 (diff) | |
download | gdb-57594b6a7538bde26de2d807ff29b0f5e619be03.zip gdb-57594b6a7538bde26de2d807ff29b0f5e619be03.tar.gz gdb-57594b6a7538bde26de2d807ff29b0f5e619be03.tar.bz2 |
Rearrange struct bfd_section a little
For better packing on 64-bit hosts.
* section.c (struct bfd_section): Move next and prev field earlier.
Move alignment_power later.
(BFD_FAKE_SECTION): Adjust to suit.
* bfd-in2.h: Regenerate.
Diffstat (limited to 'bfd/bfd-in2.h')
-rw-r--r-- | bfd/bfd-in2.h | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index eb3b79e..50e26fc 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -766,6 +766,12 @@ typedef struct bfd_section the same as that passed to bfd_make_section. */ const char *name; + /* The next section in the list belonging to the BFD, or NULL. */ + struct bfd_section *next; + + /* The previous section in the list belonging to the BFD, or NULL. */ + struct bfd_section *prev; + /* A unique sequence number. */ unsigned int id; @@ -776,12 +782,6 @@ typedef struct bfd_section /* Which section in the bfd; 0..n-1 as sections are created in a bfd. */ unsigned int index; - /* The next section in the list belonging to the BFD, or NULL. */ - struct bfd_section *next; - - /* The previous section in the list belonging to the BFD, or NULL. */ - struct bfd_section *prev; - /* The field flags contains attributes of the section. Some flags are read in from the object file, and some are synthesized from other information. */ @@ -1082,10 +1082,6 @@ typedef struct bfd_section /* The output section through which to map on output. */ struct bfd_section *output_section; - /* The alignment requirement of the section, as an exponent of 2 - - e.g., 3 aligns to 2^3 (or 8). */ - unsigned int alignment_power; - /* If an input section, a pointer to a vector of relocation records for the data in this section. */ struct reloc_cache_entry *relocation; @@ -1097,6 +1093,10 @@ typedef struct bfd_section /* The number of relocation records in one of the above. */ unsigned reloc_count; + /* The alignment requirement of the section, as an exponent of 2 - + e.g., 3 aligns to 2^3 (or 8). */ + unsigned int alignment_power; + /* Information below is back end specific - and not always used or updated. */ @@ -1306,8 +1306,8 @@ discarded_section (const asection *sec) } #define BFD_FAKE_SECTION(SEC, SYM, NAME, IDX, FLAGS) \ - /* name, id, section_id, index, next, prev, flags, user_set_vma, */ \ - { NAME, IDX, 0, 0, NULL, NULL, FLAGS, 0, \ + /* name, next, prev, id, section_id, index, flags, user_set_vma, */ \ + { NAME, NULL, NULL, IDX, 0, 0, FLAGS, 0, \ \ /* linker_mark, linker_has_input, gc_mark, decompress_status, */ \ 0, 0, 1, 0, \ @@ -1318,14 +1318,14 @@ discarded_section (const asection *sec) /* sec_flg0, sec_flg1, sec_flg2, sec_flg3, sec_flg4, sec_flg5, */ \ 0, 0, 0, 0, 0, 0, \ \ - /* vma, lma, size, rawsize, compressed_size, */ \ + /* vma, lma, size, rawsize, compressed_size, */ \ 0, 0, 0, 0, 0, \ \ - /* output_offset, output_section, alignment_power, */ \ - 0, &SEC, 0, \ + /* output_offset, output_section, relocation, orelocation, */ \ + 0, &SEC, NULL, NULL, \ \ - /* relocation, orelocation, reloc_count, filepos, rel_filepos, */ \ - NULL, NULL, 0, 0, 0, \ + /* reloc_count, alignment_power, filepos, rel_filepos, */ \ + 0, 0, 0, 0, \ \ /* line_filepos, userdata, contents, lineno, lineno_count, */ \ 0, NULL, NULL, NULL, 0, \ |