[PATCH] D39394: Do not consider Shared symbols as defined symbols.
Rui Ueyama via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 27 16:17:28 PDT 2017
ruiu updated this revision to Diff 120717.
ruiu added a comment.
- actually fix the class hierarchy
https://reviews.llvm.org/D39394
Files:
lld/ELF/Symbols.h
Index: lld/ELF/Symbols.h
===================================================================
--- lld/ELF/Symbols.h
+++ lld/ELF/Symbols.h
@@ -42,9 +42,9 @@
enum Kind {
DefinedFirst,
DefinedRegularKind = DefinedFirst,
- SharedKind,
DefinedCommonKind,
DefinedLast = DefinedCommonKind,
+ SharedKind,
UndefinedKind,
LazyArchiveKind,
LazyObjectKind,
@@ -205,15 +205,16 @@
}
};
-class SharedSymbol : public Defined {
+class SharedSymbol : public SymbolBody {
public:
static bool classof(const SymbolBody *S) {
return S->kind() == SymbolBody::SharedKind;
}
SharedSymbol(StringRef Name, uint8_t StOther, uint8_t Type,
const void *ElfSym, const void *Verdef)
- : Defined(SymbolBody::SharedKind, Name, /*IsLocal=*/false, StOther, Type),
+ : SymbolBody(SymbolBody::SharedKind, Name, /*IsLocal=*/false, StOther,
+ Type),
Verdef(Verdef), ElfSym(ElfSym) {
// GNU ifunc is a mechanism to allow user-supplied functions to
// resolve PLT slot values at load-time. This is contrary to the
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D39394.120717.patch
Type: text/x-patch
Size: 1100 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171027/a0060c34/attachment.bin>
More information about the llvm-commits
mailing list