From 1c7b907325e9cf3a0713ceab5029fef04d9e498c Mon Sep 17 00:00:00 2001 From: Reid Spencer Date: Tue, 14 Sep 2004 05:43:23 +0000 Subject: [PATCH] Okay, the list of link-time passes wasn't such a hot idea. Its prone to error. We'll strategize on this when we have multiple front ends to deal with. For now llvm-ld just runs a standard set of transforms. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16333 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Module.h | 26 -------------------------- lib/AsmParser/Lexer.l | 1 - lib/AsmParser/llvmAsmParser.y | 17 +---------------- lib/VMCore/AsmWriter.cpp | 14 -------------- lib/VMCore/Module.cpp | 7 ------- 5 files changed, 1 insertion(+), 64 deletions(-) diff --git a/include/llvm/Module.h b/include/llvm/Module.h index 64a84d4db10..a4b675fd476 100644 --- a/include/llvm/Module.h +++ b/include/llvm/Module.h @@ -49,7 +49,6 @@ public: typedef iplist GlobalListType; typedef iplist FunctionListType; typedef SetVector LibraryListType; - typedef std::vector PassListType; // Global Variable iterators... typedef GlobalListType::iterator giterator; @@ -66,9 +65,6 @@ public: // Library list iterators typedef LibraryListType::const_iterator lib_iterator; - // Link-time Pass list iterators - typedef PassListType::const_iterator pass_iterator; - enum Endianness { AnyEndianness, LittleEndian, BigEndian }; enum PointerSize { AnyPointerSize, Pointer32, Pointer64 }; @@ -76,7 +72,6 @@ private: GlobalListType GlobalList; // The Global Variables in the module FunctionListType FunctionList; // The Functions in the module LibraryListType LibraryList; // The Libraries needed by the module - PassListType PassList; // The Passes needed by the module at link time SymbolTable *SymTab; // Symbol Table for the module std::string ModuleID; // Human readable identifier for the module std::string TargetTriple; // Platform target triple Module compiled on @@ -252,27 +247,6 @@ public: /// @brief Get all the libraries inline const LibraryListType& getLibraries() const { return LibraryList; } - //===--------------------------------------------------------------------===// - // Access functions for Link-time pass list - - /// @brief Get a constant iterator to beginning of pass list. - inline pass_iterator pass_begin() const { return PassList.begin(); } - - /// @brief Get a constant iterator to end of pass list. - inline pass_iterator pass_end() const { return PassList.end(); } - - /// @brief Returns the number of items in the list of passes. - inline unsigned pass_size() const { return PassList.size(); } - - /// @brief Add a library to the list of passes - inline void addPass(const std::string& Pass){ PassList.push_back(Pass); } - - /// @brief Remove a library from the list of passes - void removePass(const std::string& Lib); - - /// @brief Get all the passes - inline const PassListType& getPasses() const { return PassList; } - //===--------------------------------------------------------------------===// // Utility functions for printing and dumping Module objects diff --git a/lib/AsmParser/Lexer.l b/lib/AsmParser/Lexer.l index 9290cf1ae07..45361bd77b8 100644 --- a/lib/AsmParser/Lexer.l +++ b/lib/AsmParser/Lexer.l @@ -195,7 +195,6 @@ not { return NOT; } /* Deprecated, turned into XOR */ target { return TARGET; } triple { return TRIPLE; } deplibs { return DEPLIBS; } -passes { return PASSES; } endian { return ENDIAN; } pointersize { return POINTERSIZE; } little { return LITTLE; } diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index aec7b38dbdc..ce92c9cb697 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -910,7 +910,7 @@ Module *llvm::RunVMAsmParser(const std::string &Filename, FILE *F) { %token DECLARE GLOBAL CONSTANT VOLATILE %token TO DOTDOTDOT NULL_TOK CONST INTERNAL LINKONCE WEAK APPENDING %token OPAQUE NOT EXTERNAL TARGET TRIPLE ENDIAN POINTERSIZE LITTLE BIG -%token DEPLIBS PASSES +%token DEPLIBS // Basic Block Terminating Operators %token RET BR SWITCH INVOKE UNWIND @@ -1484,8 +1484,6 @@ ConstPool : ConstPool OptAssign TYPE TypesV { // Types can be defined in the co } | ConstPool DEPLIBS '=' LibrariesDefinition { } - | ConstPool PASSES '=' PassesDefinition { - } | /* empty: end of list */ { }; @@ -1524,19 +1522,6 @@ LibList : LibList ',' STRINGCONSTANT { } ; -PassesDefinition : '[' PassList ']'; -PassList : PassList ',' STRINGCONSTANT { - CurModule.CurrentModule->addLibrary($3); - free($3); - } - | STRINGCONSTANT { - CurModule.CurrentModule->addLibrary($1); - free($1); - } - | /* empty: end of list */ { - } - ; - //===----------------------------------------------------------------------===// // Rules to match Function Headers //===----------------------------------------------------------------------===// diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp index 0cca2a78824..236e243caad 100644 --- a/lib/VMCore/AsmWriter.cpp +++ b/lib/VMCore/AsmWriter.cpp @@ -778,20 +778,6 @@ void AssemblyWriter::printModule(const Module *M) { Out << " ]\n"; } - // Loop over the link time pass list and emit them. - Module::pass_iterator PI = M->pass_begin(); - Module::pass_iterator PE = M->pass_end(); - if (LI != LE) { - Out << "passes = [ "; - while (LI != LE) { - Out << '"' << *LI << '"'; - ++LI; - if (LI != LE) - Out << ", "; - } - Out << " ]\n"; - } - // Loop over the symbol table, emitting all named constants. printSymbolTable(M->getSymbolTable()); diff --git a/lib/VMCore/Module.cpp b/lib/VMCore/Module.cpp index 1dae14ec53f..3759cfd85eb 100644 --- a/lib/VMCore/Module.cpp +++ b/lib/VMCore/Module.cpp @@ -270,13 +270,6 @@ std::string Module::getTypeName(const Type *Ty) const { return ""; // Must not have found anything... } -void Module::removePass(const std::string& Lib) { - PassListType::iterator I = find(PassList.begin(),PassList.end(),Lib); - if (I != PassList.end()) - PassList.erase(I); -} - - //===----------------------------------------------------------------------===// // Other module related stuff. //