[LLVMdev] [lld] Undefined symbols postprocessing

Joerg Sonnenberger joerg at britannica.bec.de
Wed Feb 18 05:45:45 PST 2015


On Wed, Feb 18, 2015 at 01:38:15AM -0800, Denis Protivensky wrote:
> The problem is that now symbols are added in a declarative way by
> specifying in ExecutableWriter::addDefaultAtoms() override.
> At that stage, there's no way to determine if additional symbols are 
> required.

Correct, this is actually quite a bit more fundamental. If you check
various test cases, you will find symbol table polllution with unused
items like __tls_get_addr.

> I propose to add the ability to ignore undefined symbols during initial
> resolution, and then postprocess only those undefines for the second time
> after the pass manager execution.

Do you want to do that before or after dead code elimination?

Joerg



More information about the llvm-dev mailing list