diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-06-10 13:44:49 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-06-10 13:44:49 +0000 |
commit | 2079716dfb3fb7e4e24b8b2e85eb6780b981a0af (patch) | |
tree | 3b0c58e50948b450b50b20ae5a38c005128edfb5 /ELF/Config.h | |
parent | b9a1baec33e911ca24f51abf882d454e62047ea6 (diff) | |
download | src-2079716dfb3fb7e4e24b8b2e85eb6780b981a0af.tar.gz src-2079716dfb3fb7e4e24b8b2e85eb6780b981a0af.zip |
Vendor import of lld trunk r305145:vendor/lld/lld-trunk-r305145
Notes
Notes:
svn path=/vendor/lld/dist/; revision=319788
svn path=/vendor/lld/lld-trunk-r305145/; revision=319789; tag=vendor/lld/lld-trunk-r305145
Diffstat (limited to 'ELF/Config.h')
-rw-r--r-- | ELF/Config.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/ELF/Config.h b/ELF/Config.h index 54f6dc2acc7c..9c73b4c9c068 100644 --- a/ELF/Config.h +++ b/ELF/Config.h @@ -13,9 +13,9 @@ #include "llvm/ADT/MapVector.h" #include "llvm/ADT/StringRef.h" #include "llvm/ADT/StringSet.h" +#include "llvm/BinaryFormat/ELF.h" #include "llvm/Support/CachePruning.h" #include "llvm/Support/CodeGen.h" -#include "llvm/Support/ELF.h" #include "llvm/Support/Endian.h" #include <vector> @@ -67,6 +67,12 @@ struct VersionDefinition { size_t NameOff = 0; // Offset in the string table }; +// Structure for mapping renamed symbols +struct RenamedSymbol { + Symbol *Target; + uint8_t OrigBinding; +}; + // This struct contains the global configuration for the linker. // Most fields are direct mapping from the command line options // and such fields have the same name as the corresponding options. @@ -98,6 +104,7 @@ struct Configuration { std::vector<SymbolVersion> VersionScriptGlobals; std::vector<SymbolVersion> VersionScriptLocals; std::vector<uint8_t> BuildIdVector; + llvm::MapVector<Symbol *, RenamedSymbol> RenamedSymbols; bool AllowMultipleDefinition; bool AsNeeded = false; bool Bsymbolic; |