diff options
| -rw-r--r-- | lld/ELF/Symbols.cpp | 8 | ||||
| -rw-r--r-- | lld/ELF/Symbols.h | 18 | ||||
| -rw-r--r-- | lld/ELF/Writer.cpp | 18 |
3 files changed, 22 insertions, 22 deletions
diff --git a/lld/ELF/Symbols.cpp b/lld/ELF/Symbols.cpp index 7c939dea321..86f3162cae2 100644 --- a/lld/ELF/Symbols.cpp +++ b/lld/ELF/Symbols.cpp @@ -29,15 +29,15 @@ using namespace lld; using namespace lld::elf; DefinedRegular *ElfSym::Bss; -DefinedRegular *ElfSym::Etext; +DefinedRegular *ElfSym::Etext1; DefinedRegular *ElfSym::Etext2; -DefinedRegular *ElfSym::Edata; +DefinedRegular *ElfSym::Edata1; DefinedRegular *ElfSym::Edata2; -DefinedRegular *ElfSym::End; +DefinedRegular *ElfSym::End1; DefinedRegular *ElfSym::End2; +DefinedRegular *ElfSym::MipsGp; DefinedRegular *ElfSym::MipsGpDisp; DefinedRegular *ElfSym::MipsLocalGp; -DefinedRegular *ElfSym::MipsGp; static uint64_t getSymVA(const SymbolBody &Body, int64_t &Addend) { switch (Body.kind()) { diff --git a/lld/ELF/Symbols.h b/lld/ELF/Symbols.h index dc2eec58fd1..39a0c0f7b4d 100644 --- a/lld/ELF/Symbols.h +++ b/lld/ELF/Symbols.h @@ -302,25 +302,25 @@ public: // Some linker-generated symbols need to be created as // DefinedRegular symbols. struct ElfSym { - // The content for __bss_start symbol. + // __bss_start static DefinedRegular *Bss; - // The content for _etext and etext symbols. - static DefinedRegular *Etext; + // etext and _etext + static DefinedRegular *Etext1; static DefinedRegular *Etext2; - // The content for _edata and edata symbols. - static DefinedRegular *Edata; + // edata and _edata + static DefinedRegular *Edata1; static DefinedRegular *Edata2; - // The content for _end and end symbols. - static DefinedRegular *End; + // end and _end + static DefinedRegular *End1; static DefinedRegular *End2; - // The content for _gp_disp/__gnu_local_gp symbols for MIPS target. + // _gp, _gp_disp and __gnu_local_gp symbols. Only for MIPS. + static DefinedRegular *MipsGp; static DefinedRegular *MipsGpDisp; static DefinedRegular *MipsLocalGp; - static DefinedRegular *MipsGp; }; // A real symbol object, SymbolBody, is usually stored within a Symbol. There's diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp index 94515fc341c..3ded0c675b8 100644 --- a/lld/ELF/Writer.cpp +++ b/lld/ELF/Writer.cpp @@ -879,12 +879,12 @@ template <class ELFT> void Writer<ELFT>::addReservedSymbols() { }; ElfSym::Bss = Add("__bss_start"); - ElfSym::End = Add("_end"); - ElfSym::End2 = Add("end"); - ElfSym::Etext = Add("_etext"); - ElfSym::Etext2 = Add("etext"); - ElfSym::Edata = Add("_edata"); - ElfSym::Edata2 = Add("edata"); + ElfSym::End1 = Add("end"); + ElfSym::End2 = Add("_end"); + ElfSym::Etext1 = Add("etext"); + ElfSym::Etext2 = Add("_etext"); + ElfSym::Edata1 = Add("edata"); + ElfSym::Edata2 = Add("_edata"); } // Sort input sections by section name suffixes for @@ -1692,11 +1692,11 @@ template <class ELFT> void Writer<ELFT>::fixPredefinedSymbols() { LastRO = &P; } if (Last) - Set(ElfSym::End, ElfSym::End2, Last->First, Last->p_memsz); + Set(ElfSym::End1, ElfSym::End2, Last->First, Last->p_memsz); if (LastRO) - Set(ElfSym::Etext, ElfSym::Etext2, LastRO->First, LastRO->p_filesz); + Set(ElfSym::Etext1, ElfSym::Etext2, LastRO->First, LastRO->p_filesz); if (LastRW) - Set(ElfSym::Edata, ElfSym::Edata2, LastRW->First, LastRW->p_filesz); + Set(ElfSym::Edata1, ElfSym::Edata2, LastRW->First, LastRW->p_filesz); if (ElfSym::Bss) ElfSym::Bss->Section = findSection(".bss"); |

