[PATCH] D34650: [COFF] Allow debug info to relocate against discarded symbols

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 26 17:23:25 PDT 2017


rnk added a comment.

In https://reviews.llvm.org/D34650#791386, @rnk wrote:

> In https://reviews.llvm.org/D34650#791277, @majnemer wrote:
>
> > Do they emit a `S_DISCARDED` for the symbol?
>
>
> Nope. It's not nearly as bad as DWARF, though, which has tons of relocations against discarded sections.


It's worth pointing out that this only seems to be a problem for globals, not functions. Functions use associative comdats to drop debug info describing discarded functions. The only place I've seen these bad relocations is in these S_GDATA32 records for external globals. MSVC represents function declarations with LF_FUNC_ID type records, which are merged across TUs and don't contain relocations.


https://reviews.llvm.org/D34650





More information about the llvm-commits mailing list