<div dir="ltr">I don't know how much we could get from virtualizing writeTo (so I'm okay to revert this for now), but if the cost of having it is sub-1% and if it will improve readability quite a lot, I'd vote for readability over performance. So virtualizing writeTo is still an option.</div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Nov 8, 2016 at 5:08 AM, Eugene Leviant via llvm-commits <span dir="ltr"><<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Okay, let's revert this than. I'll write alternative patch for .got.plt.<br>
<div class="HOEnZb"><div class="h5"><br>
2016-11-08 15:42 GMT+03:00 Rafael EspĂndola <<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>>:<br>
> On 8 November 2016 at 07:00, Eugene Leviant <<a href="mailto:evgeny.leviant@gmail.com">evgeny.leviant@gmail.com</a>> wrote:<br>
>> VMTs themselves are not allocated (AFAIK they're stored in .rodata),<br>
>> so I guess the problem is in extra 4/8 bytes of VMT pointer size and<br>
>> overhead<br>
>> for initialization, correct?<br>
><br>
> Yes, in each input section.<br>
><br>
>> For dyn_cast you have extra 4 bytes for<br>
>> Kind + function call + compare-and-branch. Can you provide some<br>
>> proofs, that it is faster?<br>
>> (like you did in your previous letter).<br>
><br>
> The SectionKind only uses 3 bits in the input section. Really, the<br>
> issue is sizeof(InputSection<ELFT>). We are quite bounded by memory<br>
> access, so compacting structures is an important optimization.<br>
><br>
> Do you have an ETA? Would you mind reverting the patch for now?<br>
><br>
> Cheers,<br>
> Rafael<br>
______________________________<wbr>_________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-commits</a><br>
</div></div></blockquote></div><br></div>