bfd: use less memory in string merging
authorMichael Matz <matz@suse.de>
Tue, 7 Nov 2023 16:12:46 +0000 (17:12 +0100)
committerMichael Matz <matz@suse.de>
Thu, 9 Nov 2023 16:42:48 +0000 (17:42 +0100)
commit21160d8a18dc21aafb8ab1026e13e5c524954a46
treeacc8777c6e0a912459a1506ba0183850e230ff28
parent836654b1177ab305c36fe7319f08f0ad5d4fac1b
bfd: use less memory in string merging

the offset-to-entry mappings are allocated in blocks, which may
become a bit wasteful in case there are extremely many small
input files or sections.  This made it so that a large project
(Qt5WebEngine) didn't build anymore on x86 32bit due to address
space limits.  It barely fit into address space before the new
string merging, and then got pushed over the limit by this.

So instead of leaving the waste reallocate the maps to their final
size once known.  Now the link barely fits again.

bfd/
    * merge.c (record_section): Reallocate offset maps to their
    final size.
bfd/merge.c