[ELF] Make --trace-symbol track preempted shared definitions
authorFangrui Song <maskray@google.com>
Mon, 18 May 2020 17:15:59 +0000 (10:15 -0700)
committerFangrui Song <maskray@google.com>
Tue, 19 May 2020 15:56:35 +0000 (08:56 -0700)
commit64676499741cb985146ab982a67da859ff8f4f4d
treed0e5e72c892cb79ff1dbbd3a8877d67ee848e997
parent5d82cb3c3a6af8d12b87bcbdc6abd3b7f4b01652
[ELF] Make --trace-symbol track preempted shared definitions

Note, we still name a preempted SharedSymbol "shared definition",
instead of "reference" as printed by GNU ld. This difference should not matter.

```
// GNU ld
ld.bfd: t: definition of f@v1
ld.bfd: t.so: reference to f@v1
```

Reviewed By: psmith

Differential Revision: https://reviews.llvm.org/D80143
lld/ELF/Symbols.cpp
lld/test/ELF/trace-symbols.s