Remove Size from Undefined symbol.
There seems to be no reason to keep st_size of undefined symbols.
This patch removes the member for it. This patch will change outputs
in cases that undefined symbols are copied to output, but I think
this is unimportant.
Differential Revision: http://reviews.llvm.org/D19574
llvm-svn: 267826
diff --git a/lld/ELF/Symbols.cpp b/lld/ELF/Symbols.cpp
index e911f18..f73a9c7 100644
--- a/lld/ELF/Symbols.cpp
+++ b/lld/ELF/Symbols.cpp
@@ -174,8 +174,6 @@
return DR->Size;
if (const auto *S = dyn_cast<SharedSymbol<ELFT>>(this))
return S->Sym.st_size;
- if (const auto *U = dyn_cast<Undefined>(this))
- return U->Size;
return 0;
}
@@ -232,16 +230,13 @@
}
Undefined::Undefined(StringRef Name, uint8_t Binding, uint8_t StOther,
- uint8_t Type, uint64_t Size, bool IsBitcode)
- : SymbolBody(SymbolBody::UndefinedKind, Name, Binding, StOther, Type),
- Size(Size) {
+ uint8_t Type, bool IsBitcode)
+ : SymbolBody(SymbolBody::UndefinedKind, Name, Binding, StOther, Type) {
this->IsUndefinedBitcode = IsBitcode;
}
-Undefined::Undefined(uint32_t NameOffset, uint8_t StOther, uint8_t Type,
- uint64_t Size)
- : SymbolBody(SymbolBody::UndefinedKind, NameOffset, StOther, Type),
- Size(Size) {
+Undefined::Undefined(uint32_t NameOffset, uint8_t StOther, uint8_t Type)
+ : SymbolBody(SymbolBody::UndefinedKind, NameOffset, StOther, Type) {
this->IsUndefinedBitcode = false;
}