[gold] Merging string literals with bigger alignment
Alexander Ivchenko
aivchenk@gmail.com
Thu Apr 4 12:01:00 GMT 2013
Hi, I implemented (b2) as we discussed above. Could you please take a look.
thanks,
Alexander
2013/4/3 Ian Lance Taylor <iant@google.com>:
> On Tue, Apr 2, 2013 at 10:07 AM, Cary Coutant <ccoutant@google.com> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: merging_string_literals_04f.patch
Type: application/octet-stream
Size: 16173 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20130404/4eeb3b8b/attachment.obj>
More information about the Binutils
mailing list