<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Feb 28, 2017 at 5:04 PM, Rafael Avila de Espindola <span dir="ltr"><<a href="mailto:rafael.espindola@gmail.com" target="_blank">rafael.espindola@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">Rui Ueyama via Phabricator <<a href="mailto:reviews@reviews.llvm.org">reviews@reviews.llvm.org</a>> writes:<br>
<br>
> ruiu added a comment.<br>
><br>
> It doesn't seem like an improvement to me. Out::Bss and Out::BssRelRo are containers of synthetic sections, thus they are output sections. You could represent them as input sections, and we want to do if that simplifies code/design, but this patch doesn't seem to simplify it.<br>
<br>
</span>They are synthetic sections in the sense that a linker script can<br>
put them in another output section:<br>
<br>
  aabb : { *(.bss.*) }<br>
<br>
Maybe we should revisit the idea of having one section per copy<br>
relocation? We can do that if we add an offset to SharedSymbol or if we<br>
replace the SharedSymbol with a DefinedRegular when a copy relocation is<br>
created (I think I like the second option better).<br></blockquote><div><br></div><div>Are you saying that, for each symbol that needs copy relocation, create a .bss (or .<a href="http://bss.rel.ro">bss.rel.ro</a>) synthetic section and add it to the input section list, so that a latter pass will aggregate them to a .bss (or .<a href="http://bss.rel.ro">bss.rel.ro</a>) output section?</div></div></div></div>