summaryrefslogtreecommitdiffstats
path: root/lld/ELF/Symbols.h
diff options
context:
space:
mode:
Diffstat (limited to 'lld/ELF/Symbols.h')
-rw-r--r--lld/ELF/Symbols.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/lld/ELF/Symbols.h b/lld/ELF/Symbols.h
index c454f80ad48..696a30cb390 100644
--- a/lld/ELF/Symbols.h
+++ b/lld/ELF/Symbols.h
@@ -102,6 +102,10 @@ protected:
const unsigned SymbolKind : 8;
public:
+ // True if the linker has to generate a copy relocation.
+ // For SharedSymbol only.
+ unsigned NeedsCopy : 1;
+
// True the symbol should point to its PLT entry.
// For SharedSymbol only.
unsigned NeedsPltAddr : 1;
@@ -266,6 +270,9 @@ public:
// This field is a pointer to the symbol's version definition.
const void *Verdef;
+ // Section is significant only when NeedsCopy is true.
+ InputSection *Section = nullptr;
+
private:
template <class ELFT> const typename ELFT::Sym &getSym() const {
return *(const typename ELFT::Sym *)ElfSym;
OpenPOWER on IntegriCloud