[lld] r286100 - [ELF] Make InputSection<ELFT>::writeTo virtual

Eugene Leviant via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 8 05:08:48 PST 2016


Okay, let's revert this than. I'll write alternative patch for .got.plt.

2016-11-08 15:42 GMT+03:00 Rafael EspĂ­ndola <rafael.espindola at gmail.com>:
> On 8 November 2016 at 07:00, Eugene Leviant <evgeny.leviant at gmail.com> wrote:
>> VMTs themselves are not allocated (AFAIK they're stored in .rodata),
>> so I guess the problem is in extra 4/8 bytes of VMT pointer size and
>> overhead
>> for initialization, correct?
>
> Yes, in each input section.
>
>> For dyn_cast you have extra 4 bytes for
>> Kind + function call + compare-and-branch. Can you provide some
>> proofs, that it is faster?
>> (like you did in your previous letter).
>
> The SectionKind only uses 3 bits in the input section. Really, the
> issue is sizeof(InputSection<ELFT>). We are quite bounded by memory
> access, so compacting structures is an important optimization.
>
> Do you have an ETA? Would you mind reverting the patch for now?
>
> Cheers,
> Rafael


More information about the llvm-commits mailing list