This is the mail archive of the mailing list for the binutils project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [gold] Merging string literals with bigger alignment

Hi, I implemented (b2) as we discussed above. Could you please take a look.


2013/4/3 Ian Lance Taylor <>:
> On Tue, Apr 2, 2013 at 10:07 AM, Cary Coutant <> wrote:
>>> Now I see your point, thank you for clarification. If we choose (b2)
>>> we would not be able to
>>> create only one Output_merge_string_data for string literals with
>>> different alignments (cause each
>>> Output_merge_string_data has only one string pool and its alignment
>>> would be fixed) and therefore
>>> never would be able to merge the same string from, say, rodata.str1.4
>>> and .rodata.str.1.8.
>>> It seems like a little restriction to me (I don't know how much memory
>>> we can get out of that), but if you are okey I'll do (b2).
>> Given the discussion earlier in the thread about why the compilers
>> would generate a .rodata.str1.XX section, it seems clear that there is
>> little likelihood that we'd ever find any strings to merge across the
>> different sections. (The only case I can think of would be when
>> linking code generated by two different compilers.) I'm fine with this
>> restriction; it's strictly better than what gold does now. Ian?
> I agree.
> Ian

Attachment: merging_string_literals_04f.patch
Description: Binary data

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]