[llvm] r219829 - Correctly handle references to section symbols.

Rui Ueyama ruiu at google.com
Thu Oct 16 14:11:47 PDT 2014


On Thu, Oct 16, 2014 at 1:16 PM, Rafael EspĂ­ndola <
rafael.espindola at gmail.com> wrote:

> On 16 October 2014 14:27, Rui Ueyama <ruiu at google.com> wrote:
> > This patch seems to have broke out internal test. I'm still
> investigating,
> > but it looks like it made global object's constructors to be called
> twice in
> > some situation. Do you have any idea why this patch could cause such
> > behavior?
>
> No, sorry. I wouldn't expect this to have any difference in code
> produced by llvm itself. Do you see any use of section symbols in
> expressions in the .s? Does it work if you use GAS instead of MC?
>

I compared the DSOs built with and without this patch, and found that
although the size of .ctor sections are the same, the bad DSO contains
repetition. So some constructors are called more than once (and probably
some are not called at all). That seems the direct cause of the issue.

The test is gigantic and having a lot of dependencies. It takes a little
bit more time to understand what's going on there.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141016/61bda4f3/attachment.html>


More information about the llvm-commits mailing list