[llvm] r233165 - Linker: Temporarily disable dwarfdump checks from r233164

David Blaikie dblaikie at gmail.com
Wed Mar 25 10:50:28 PDT 2015


On Wed, Mar 25, 2015 at 10:45 AM, Duncan P. N. Exon Smith <
dexonsmith at apple.com> wrote:

>
> > On 2015-Mar-25, at 10:24, Duncan P. N. Exon Smith <dexonsmith at apple.com>
> wrote:
> >
> >>
> >> On 2015-Mar-25, at 10:12, Duncan P. N. Exon Smith <dexonsmith at apple.com>
> wrote:
> >>
> >> Good point, I guess I'm not being very creative :/.  Peter also obliged
> >> [1] my request for a dump on Linux, which I've reproduced locally by
> >> specifying -mtriple=x86_64-unknown-linux.  What's going wrong is the
> >> second compile unit is missing the subprogram for the weak ("winning")
> >> function.
> >>
> >> [1]: https://llvm.org/bugs/show_bug.cgi?id=22792#c7 "Output on Linux"
> >>
> >> This DWARF is wrong, right?  (I.e., are the expected differences in
> >> debug info between Linux and Darwin all in the frontend generation
> >> logic?)
> >
> > Just talked to Adrian offline; answer is "yes".  I'll see if I can figure
> > this out and just revert r233165.
>
> Interestingly, in assembly both darwin and linux are "missing" things.
>
> On darwin, we get the subprogram for the smaller compile unit, but not
> the compile unit.
>

Not sure if relevant, but Darwin's linker or something likes to drop CUs
with no subprograms... (I hit this when improving -gmlt output size)


>
> On linux, we get the smaller compile unit, but no subprogram.
>
> Attaching assembly in case this is obvious to someone.  About to start
> debugging it myself though.
>
> darwin1.a and linux1.a were generated from the LW testcase (linkonce
> version of @foo before weak version of @foo), while darwin2.a and
> linux2.a were generated from the WL testcase (weak version first).
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150325/d341b5b9/attachment.html>


More information about the llvm-commits mailing list