diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-11-27 09:55:56 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-11-27 09:55:56 +0000 |
commit | efd08d413c077956478fbde90fd65aa6f179bb39 (patch) | |
tree | 0cdc57bc794b7e0e6d54a9d147188b980b053d27 | |
parent | 1db3152ddee056c2433ec29e3286e625ff6ae6f5 (diff) |
Remove the dependent libraries feature.
The dependent libraries feature was never used and has bit-rotted. Remove it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168694 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/Bitcode/LLVMBitCodes.h | 1 | ||||
-rw-r--r-- | include/llvm/Module.h | 24 | ||||
-rw-r--r-- | lib/AsmParser/LLLexer.cpp | 1 | ||||
-rw-r--r-- | lib/AsmParser/LLParser.cpp | 26 | ||||
-rw-r--r-- | lib/AsmParser/LLParser.h | 1 | ||||
-rw-r--r-- | lib/AsmParser/LLToken.h | 1 | ||||
-rw-r--r-- | lib/Bitcode/Reader/BitcodeReader.cpp | 7 | ||||
-rw-r--r-- | lib/Bitcode/Writer/BitcodeWriter.cpp | 4 | ||||
-rw-r--r-- | lib/Linker/LinkItems.cpp | 25 | ||||
-rw-r--r-- | lib/Linker/LinkModules.cpp | 13 | ||||
-rw-r--r-- | lib/Target/CppBackend/CPPBackend.cpp | 8 | ||||
-rw-r--r-- | lib/Transforms/Utils/CloneModule.cpp | 4 | ||||
-rw-r--r-- | lib/VMCore/AsmWriter.cpp | 15 | ||||
-rw-r--r-- | lib/VMCore/Module.cpp | 18 | ||||
-rw-r--r-- | test/Feature/properties.ll | 1 | ||||
-rw-r--r-- | test/Integer/properties_bt.ll | 2 | ||||
-rw-r--r-- | test/Linker/2006-01-19-ConstantPacked.ll | 5 | ||||
-rw-r--r-- | test/Transforms/Inline/2006-11-09-InlineCGUpdate-2.ll | 1 | ||||
-rw-r--r-- | test/Transforms/Inline/2006-11-09-InlineCGUpdate.ll | 1 | ||||
-rw-r--r-- | tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp | 1 |
20 files changed, 1 insertions, 158 deletions
diff --git a/include/llvm/Bitcode/LLVMBitCodes.h b/include/llvm/Bitcode/LLVMBitCodes.h index 3c7c2b3a06..1d32a93900 100644 --- a/include/llvm/Bitcode/LLVMBitCodes.h +++ b/include/llvm/Bitcode/LLVMBitCodes.h @@ -54,7 +54,6 @@ namespace bitc { MODULE_CODE_DATALAYOUT = 3, // DATALAYOUT: [strchr x N] MODULE_CODE_ASM = 4, // ASM: [strchr x N] MODULE_CODE_SECTIONNAME = 5, // SECTIONNAME: [strchr x N] - MODULE_CODE_DEPLIB = 6, // DEPLIB: [strchr x N] // GLOBALVAR: [pointer type, isconst, initid, // linkage, alignment, section, visibility, threadlocal] diff --git a/include/llvm/Module.h b/include/llvm/Module.h index e6303ac775..43d4d6a00f 100644 --- a/include/llvm/Module.h +++ b/include/llvm/Module.h @@ -21,7 +21,6 @@ #include "llvm/Metadata.h" #include "llvm/ADT/OwningPtr.h" #include "llvm/Support/DataTypes.h" -#include <vector> namespace llvm { @@ -122,9 +121,6 @@ public: /// The type for the list of named metadata. typedef ilist<NamedMDNode> NamedMDListType; - /// The type for the list of dependent libraries. - typedef std::vector<std::string> LibraryListType; - /// The Global Variable iterator. typedef GlobalListType::iterator global_iterator; /// The Global Variable constant iterator. @@ -144,8 +140,6 @@ public: typedef NamedMDListType::iterator named_metadata_iterator; /// The named metadata constant interators. typedef NamedMDListType::const_iterator const_named_metadata_iterator; - /// The Library list iterator. - typedef LibraryListType::const_iterator lib_iterator; /// An enumeration for describing the endianess of the target machine. enum Endianness { AnyEndianness, LittleEndian, BigEndian }; @@ -195,7 +189,6 @@ private: GlobalListType GlobalList; ///< The Global Variables in the module FunctionListType FunctionList; ///< The Functions in the module AliasListType AliasList; ///< The Aliases in the module - LibraryListType LibraryList; ///< The Libraries needed by the module NamedMDListType NamedMDList; ///< The named metadata in the module std::string GlobalScopeAsm; ///< Inline Asm at global scope. ValueSymbolTable *ValSymTab; ///< Symbol table for values @@ -527,23 +520,6 @@ public: bool empty() const { return FunctionList.empty(); } /// @} -/// @name Dependent Library Iteration -/// @{ - - /// @brief Get a constant iterator to beginning of dependent library list. - inline lib_iterator lib_begin() const { return LibraryList.begin(); } - /// @brief Get a constant iterator to end of dependent library list. - inline lib_iterator lib_end() const { return LibraryList.end(); } - /// @brief Returns the number of items in the list of libraries. - inline size_t lib_size() const { return LibraryList.size(); } - /// @brief Add a library to the list of dependent libraries - void addLibrary(StringRef Lib); - /// @brief Remove a library from the list of dependent libraries - void removeLibrary(StringRef Lib); - /// @brief Get all the libraries - inline const LibraryListType& getLibraries() const { return LibraryList; } - -/// @} /// @name Alias Iteration /// @{ diff --git a/lib/AsmParser/LLLexer.cpp b/lib/AsmParser/LLLexer.cpp index eb176aefcb..c498da7352 100644 --- a/lib/AsmParser/LLLexer.cpp +++ b/lib/AsmParser/LLLexer.cpp @@ -486,7 +486,6 @@ lltok::Kind LLLexer::LexIdentifier() { KEYWORD(target); KEYWORD(triple); KEYWORD(unwind); - KEYWORD(deplibs); KEYWORD(datalayout); KEYWORD(volatile); KEYWORD(atomic); diff --git a/lib/AsmParser/LLParser.cpp b/lib/AsmParser/LLParser.cpp index 65f4245062..8a9f951908 100644 --- a/lib/AsmParser/LLParser.cpp +++ b/lib/AsmParser/LLParser.cpp @@ -168,7 +168,6 @@ bool LLParser::ParseTopLevelEntities() { case lltok::kw_define: if (ParseDefine()) return true; break; case lltok::kw_module: if (ParseModuleAsm()) return true; break; case lltok::kw_target: if (ParseTargetDefinition()) return true; break; - case lltok::kw_deplibs: if (ParseDepLibs()) return true; break; case lltok::LocalVarID: if (ParseUnnamedType()) return true; break; case lltok::LocalVar: if (ParseNamedType()) return true; break; case lltok::GlobalID: if (ParseUnnamedGlobal()) return true; break; @@ -264,31 +263,6 @@ bool LLParser::ParseTargetDefinition() { } } -/// toplevelentity -/// ::= 'deplibs' '=' '[' ']' -/// ::= 'deplibs' '=' '[' STRINGCONSTANT (',' STRINGCONSTANT)* ']' -bool LLParser::ParseDepLibs() { - assert(Lex.getKind() == lltok::kw_deplibs); - Lex.Lex(); - if (ParseToken(lltok::equal, "expected '=' after deplibs") || - ParseToken(lltok::lsquare, "expected '=' after deplibs")) - return true; - - if (EatIfPresent(lltok::rsquare)) - return false; - - std::string Str; - if (ParseStringConstant(Str)) return true; - M->addLibrary(Str); - - while (EatIfPresent(lltok::comma)) { - if (ParseStringConstant(Str)) return true; - M->addLibrary(Str); - } - - return ParseToken(lltok::rsquare, "expected ']' at end of list"); -} - /// ParseUnnamedType: /// ::= LocalVarID '=' 'type' type bool LLParser::ParseUnnamedType() { diff --git a/lib/AsmParser/LLParser.h b/lib/AsmParser/LLParser.h index 8e04705a7b..5cebd974f3 100644 --- a/lib/AsmParser/LLParser.h +++ b/lib/AsmParser/LLParser.h @@ -216,7 +216,6 @@ namespace llvm { bool ParseTopLevelEntities(); bool ValidateEndOfModule(); bool ParseTargetDefinition(); - bool ParseDepLibs(); bool ParseModuleAsm(); bool ParseUnnamedType(); bool ParseNamedType(); diff --git a/lib/AsmParser/LLToken.h b/lib/AsmParser/LLToken.h index 1ec1b1e126..d102d91b3b 100644 --- a/lib/AsmParser/LLToken.h +++ b/lib/AsmParser/LLToken.h @@ -54,7 +54,6 @@ namespace lltok { kw_target, kw_triple, kw_unwind, - kw_deplibs, kw_datalayout, kw_volatile, kw_atomic, diff --git a/lib/Bitcode/Reader/BitcodeReader.cpp b/lib/Bitcode/Reader/BitcodeReader.cpp index 944a3255cd..dcbd68aee2 100644 --- a/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/lib/Bitcode/Reader/BitcodeReader.cpp @@ -1564,13 +1564,6 @@ bool BitcodeReader::ParseModule(bool Resume) { TheModule->setModuleInlineAsm(S); break; } - case bitc::MODULE_CODE_DEPLIB: { // DEPLIB: [strchr x N] - std::string S; - if (ConvertToString(Record, 0, S)) - return Error("Invalid MODULE_CODE_DEPLIB record"); - TheModule->addLibrary(S); - break; - } case bitc::MODULE_CODE_SECTIONNAME: { // SECTIONNAME: [strchr x N] std::string S; if (ConvertToString(Record, 0, S)) diff --git a/lib/Bitcode/Writer/BitcodeWriter.cpp b/lib/Bitcode/Writer/BitcodeWriter.cpp index 6206479b8d..d9493afca7 100644 --- a/lib/Bitcode/Writer/BitcodeWriter.cpp +++ b/lib/Bitcode/Writer/BitcodeWriter.cpp @@ -392,10 +392,6 @@ static unsigned getEncodedThreadLocalMode(const GlobalVariable *GV) { // descriptors for global variables, and function prototype info. static void WriteModuleInfo(const Module *M, const ValueEnumerator &VE, BitstreamWriter &Stream) { - // Emit the list of dependent libraries for the Module. - for (Module::lib_iterator I = M->lib_begin(), E = M->lib_end(); I != E; ++I) - WriteStringRecord(bitc::MODULE_CODE_DEPLIB, *I, 0/*TODO*/, Stream); - // Emit various pieces of data attached to a module. if (!M->getTargetTriple().empty()) WriteStringRecord(bitc::MODULE_CODE_TRIPLE, M->getTargetTriple(), diff --git a/lib/Linker/LinkItems.cpp b/lib/Linker/LinkItems.cpp index 52a0d175a5..e4fecebc38 100644 --- a/lib/Linker/LinkItems.cpp +++ b/lib/Linker/LinkItems.cpp @@ -51,20 +51,6 @@ Linker::LinkInItems(const ItemList& Items, ItemList& NativeItems) { } } - // At this point we have processed all the link items provided to us. Since - // we have an aggregated module at this point, the dependent libraries in - // that module should also be aggregated with duplicates eliminated. This is - // now the time to process the dependent libraries to resolve any remaining - // symbols. - bool is_native; - for (Module::lib_iterator I = Composite->lib_begin(), - E = Composite->lib_end(); I != E; ++I) { - if(LinkInLibrary(*I, is_native)) - return true; - if (is_native) - NativeItems.push_back(std::make_pair(*I, true)); - } - return false; } @@ -128,17 +114,6 @@ bool Linker::LinkInLibraries(const std::vector<std::string> &Libraries) { if (LinkInLibrary(Libraries[i], is_native)) return true; - // At this point we have processed all the libraries provided to us. Since - // we have an aggregated module at this point, the dependent libraries in - // that module should also be aggregated with duplicates eliminated. This is - // now the time to process the dependent libraries to resolve any remaining - // symbols. - const Module::LibraryListType& DepLibs = Composite->getLibraries(); - for (Module::LibraryListType::const_iterator I = DepLibs.begin(), - E = DepLibs.end(); I != E; ++I) - if (LinkInLibrary(*I, is_native)) - return true; - return false; } diff --git a/lib/Linker/LinkModules.cpp b/lib/Linker/LinkModules.cpp index a6599bfe4f..62f9d19314 100644 --- a/lib/Linker/LinkModules.cpp +++ b/lib/Linker/LinkModules.cpp @@ -1187,19 +1187,6 @@ bool ModuleLinker::run() { SrcM->getModuleInlineAsm()); } - // Update the destination module's dependent libraries list with the libraries - // from the source module. There's no opportunity for duplicates here as the - // Module ensures that duplicate insertions are discarded. - for (Module::lib_iterator SI = SrcM->lib_begin(), SE = SrcM->lib_end(); - SI != SE; ++SI) - DstM->addLibrary(*SI); - - // If the source library's module id is in the dependent library list of the - // destination library, remove it since that module is now linked in. - StringRef ModuleId = SrcM->getModuleIdentifier(); - if (!ModuleId.empty()) - DstM->removeLibrary(sys::path::stem(ModuleId)); - // Loop over all of the linked values to compute type mappings. computeTypeMapping(); diff --git a/lib/Target/CppBackend/CPPBackend.cpp b/lib/Target/CppBackend/CPPBackend.cpp index 5c909903f9..b5a20373bb 100644 --- a/lib/Target/CppBackend/CPPBackend.cpp +++ b/lib/Target/CppBackend/CPPBackend.cpp @@ -1941,14 +1941,6 @@ void CppWriter::printModule(const std::string& fname, } nl(Out); - // Loop over the dependent libraries and emit them. - Module::lib_iterator LI = TheModule->lib_begin(); - Module::lib_iterator LE = TheModule->lib_end(); - while (LI != LE) { - Out << "mod->addLibrary(\"" << *LI << "\");"; - nl(Out); - ++LI; - } printModuleBody(); nl(Out) << "return mod;"; nl(Out,-1) << "}"; diff --git a/lib/Transforms/Utils/CloneModule.cpp b/lib/Transforms/Utils/CloneModule.cpp index 1dac6b5b8b..22a8e4bc2d 100644 --- a/lib/Transforms/Utils/CloneModule.cpp +++ b/lib/Transforms/Utils/CloneModule.cpp @@ -38,10 +38,6 @@ Module *llvm::CloneModule(const Module *M, ValueToValueMapTy &VMap) { New->setTargetTriple(M->getTargetTriple()); New->setModuleInlineAsm(M->getModuleInlineAsm()); - // Copy all of the dependent libraries over. - for (Module::lib_iterator I = M->lib_begin(), E = M->lib_end(); I != E; ++I) - New->addLibrary(*I); - // Loop over all of the global variables, making corresponding globals in the // new module. Here we add them to the VMap and to the new Module. We // don't worry about attributes or initializers, they will come later. diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp index 433f3e011d..aa70498c07 100644 --- a/lib/VMCore/AsmWriter.cpp +++ b/lib/VMCore/AsmWriter.cpp @@ -1303,21 +1303,6 @@ void AssemblyWriter::printModule(const Module *M) { } } - // Loop over the dependent libraries and emit them. - Module::lib_iterator LI = M->lib_begin(); - Module::lib_iterator LE = M->lib_end(); - if (LI != LE) { - Out << '\n'; - Out << "deplibs = [ "; - while (LI != LE) { - Out << '"' << *LI << '"'; - ++LI; - if (LI != LE) - Out << ", "; - } - Out << " ]"; - } - printTypeIdentities(); // Output all globals. diff --git a/lib/VMCore/Module.cpp b/lib/VMCore/Module.cpp index 5b5176b3c7..3602a7a8f3 100644 --- a/lib/VMCore/Module.cpp +++ b/lib/VMCore/Module.cpp @@ -55,7 +55,6 @@ Module::~Module() { GlobalList.clear(); FunctionList.clear(); AliasList.clear(); - LibraryList.clear(); NamedMDList.clear(); delete ValSymTab; delete static_cast<StringMap<NamedMDNode *> *>(NamedMDSymTab); @@ -450,20 +449,3 @@ void Module::dropAllReferences() { for(Module::alias_iterator I = alias_begin(), E = alias_end(); I != E; ++I) I->dropAllReferences(); } - -void Module::addLibrary(StringRef Lib) { - for (Module::lib_iterator I = lib_begin(), E = lib_end(); I != E; ++I) - if (*I == Lib) - return; - LibraryList.push_back(Lib); -} - -void Module::removeLibrary(StringRef Lib) { - LibraryListType::iterator I = LibraryList.begin(); - LibraryListType::iterator E = LibraryList.end(); - for (;I != E; ++I) - if (*I == Lib) { - LibraryList.erase(I); - return; - } -} diff --git a/test/Feature/properties.ll b/test/Feature/properties.ll index c688d689be..2111fa2f8d 100644 --- a/test/Feature/properties.ll +++ b/test/Feature/properties.ll @@ -4,4 +4,3 @@ target datalayout = "e-p:32:32" target triple = "proc-vend-sys" -deplibs = [ "m", "c" ] diff --git a/test/Integer/properties_bt.ll b/test/Integer/properties_bt.ll index f24ddc2e80..695adf3c5f 100644 --- a/test/Integer/properties_bt.ll +++ b/test/Integer/properties_bt.ll @@ -5,5 +5,3 @@ target datalayout = "e-p:32:32" target triple = "proc-vend-sys" -deplibs = [ "m", "c" ] - diff --git a/test/Linker/2006-01-19-ConstantPacked.ll b/test/Linker/2006-01-19-ConstantPacked.ll index d2409e20c4..5b39cb2ad2 100644 --- a/test/Linker/2006-01-19-ConstantPacked.ll +++ b/test/Linker/2006-01-19-ConstantPacked.ll @@ -3,11 +3,8 @@ target datalayout = "E-p:32:32" target triple = "powerpc-apple-darwin7.7.0" -deplibs = [ "c", "crtend" ] @source = global <4 x i32> < i32 0, i32 1, i32 2, i32 3 > ; <<4 x i32>*> [#uses=0] define i32 @main() { -entry: - ret i32 0 + ret i32 0 } - diff --git a/test/Transforms/Inline/2006-11-09-InlineCGUpdate-2.ll b/test/Transforms/Inline/2006-11-09-InlineCGUpdate-2.ll index b4380d01e4..ee5a378b18 100644 --- a/test/Transforms/Inline/2006-11-09-InlineCGUpdate-2.ll +++ b/test/Transforms/Inline/2006-11-09-InlineCGUpdate-2.ll @@ -2,7 +2,6 @@ ; PR993 target datalayout = "e-p:32:32" target triple = "i386-unknown-openbsd3.9" -deplibs = [ "stdc++", "c", "crtend" ] %"struct.__gnu_cxx::__normal_iterator<char*,std::basic_string<char, std::char_traits<char>, std::allocator<char> > >" = type { i8* } %"struct.__gnu_cxx::char_producer<char>" = type { i32 (...)** } %struct.__sFILE = type { i8*, i32, i32, i16, i16, %struct.__sbuf, i32, i8*, i32 (i8*)*, i32 (i8*, i8*, i32)*, i64 (i8*, i64, i32)*, i32 (i8*, i8*, i32)*, %struct.__sbuf, i8*, i32, [3 x i8], [1 x i8], %struct.__sbuf, i32, i64 } diff --git a/test/Transforms/Inline/2006-11-09-InlineCGUpdate.ll b/test/Transforms/Inline/2006-11-09-InlineCGUpdate.ll index b754d9f9f5..fb5a4b512b 100644 --- a/test/Transforms/Inline/2006-11-09-InlineCGUpdate.ll +++ b/test/Transforms/Inline/2006-11-09-InlineCGUpdate.ll @@ -2,7 +2,6 @@ ; PR992 target datalayout = "e-p:32:32" target triple = "i686-pc-linux-gnu" -deplibs = [ "stdc++", "c", "crtend" ] %struct._IO_FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct._IO_FILE*, i32, i32, i32, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i32, [52 x i8] } %struct._IO_marker = type { %struct._IO_marker*, %struct._IO_FILE*, i32 } %"struct.__cxxabiv1::__array_type_info" = type { %"struct.std::type_info" } diff --git a/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp b/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp index 8109ca4d5b..9f23d573f6 100644 --- a/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp +++ b/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp @@ -150,7 +150,6 @@ static const char *GetCodeName(unsigned CodeID, unsigned BlockID, case bitc::MODULE_CODE_DATALAYOUT: return "DATALAYOUT"; case bitc::MODULE_CODE_ASM: return "ASM"; case bitc::MODULE_CODE_SECTIONNAME: return "SECTIONNAME"; - case bitc::MODULE_CODE_DEPLIB: return "DEPLIB"; case bitc::MODULE_CODE_GLOBALVAR: return "GLOBALVAR"; case bitc::MODULE_CODE_FUNCTION: return "FUNCTION"; case bitc::MODULE_CODE_ALIAS: return "ALIAS"; |