forked from OSchip/llvm-project
Don't create dynamic relocations for weak undefined symbols.
llvm-svn: 249520
This commit is contained in:
parent
55bbe664bd
commit
cea0b3b45d
|
@ -413,7 +413,9 @@ lld::elf2::getLocalSymVA(const typename ELFFile<ELFT>::Elf_Sym *Sym,
|
|||
bool lld::elf2::canBePreempted(const SymbolBody *Body) {
|
||||
if (!Body)
|
||||
return false;
|
||||
if (Body->isShared() || Body->isUndefined())
|
||||
if (Body->isShared())
|
||||
return true;
|
||||
if (Body->isUndefined() && !Body->isWeak())
|
||||
return true;
|
||||
if (!Config->Shared)
|
||||
return false;
|
||||
|
|
|
@ -59,4 +59,6 @@
|
|||
.global _start
|
||||
_start:
|
||||
.quad bar + 0x42
|
||||
.weak foo
|
||||
.quad foo
|
||||
call main
|
||||
|
|
Loading…
Reference in New Issue