Changeset View
Changeset View
Standalone View
Standalone View
ELF/SymbolTable.h
Show First 20 Lines • Show All 53 Lines • ▼ Show 20 Lines | public: | ||||
// Set of .so files to not link the same shared object file more than once. | // Set of .so files to not link the same shared object file more than once. | ||||
llvm::DenseMap<StringRef, SharedFile *> SoNames; | llvm::DenseMap<StringRef, SharedFile *> SoNames; | ||||
// Comdat groups define "link once" sections. If two comdat groups have the | // Comdat groups define "link once" sections. If two comdat groups have the | ||||
// same name, only one of them is linked, and the other is ignored. This map | // same name, only one of them is linked, and the other is ignored. This map | ||||
// is used to uniquify them. | // is used to uniquify them. | ||||
llvm::DenseMap<llvm::CachedHashStringRef, const InputFile *> ComdatGroups; | llvm::DenseMap<llvm::CachedHashStringRef, const InputFile *> ComdatGroups; | ||||
// The special TLS symbol _TLS_MODULE_BASE_ on targets that support TLSDESC. | |||||
const Symbol *TlsModuleBase = nullptr; | |||||
ruiu: We store this kind of symbol to ElfSym defined in Symbols.h. Please move. | |||||
private: | private: | ||||
std::vector<Symbol *> findByVersion(SymbolVersion Ver); | std::vector<Symbol *> findByVersion(SymbolVersion Ver); | ||||
std::vector<Symbol *> findAllByVersion(SymbolVersion Ver); | std::vector<Symbol *> findAllByVersion(SymbolVersion Ver); | ||||
llvm::StringMap<std::vector<Symbol *>> &getDemangledSyms(); | llvm::StringMap<std::vector<Symbol *>> &getDemangledSyms(); | ||||
void handleAnonymousVersion(); | void handleAnonymousVersion(); | ||||
void assignExactVersion(SymbolVersion Ver, uint16_t VersionId, | void assignExactVersion(SymbolVersion Ver, uint16_t VersionId, | ||||
StringRef VersionName); | StringRef VersionName); | ||||
Show All 25 Lines |
We store this kind of symbol to ElfSym defined in Symbols.h. Please move.