diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2007-02-05 20:47:22 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2007-02-05 20:47:22 +0000 |
commit | ef9b9a793949469cdaa4ab6d0173136229dcab7b (patch) | |
tree | 137b30d24ba219e5e745a11abb3807a9c4964aaa /include/llvm/Transforms | |
parent | 15468bfc22302b4f79300252425d74cd6865f8b1 (diff) | |
download | external_llvm-ef9b9a793949469cdaa4ab6d0173136229dcab7b.zip external_llvm-ef9b9a793949469cdaa4ab6d0173136229dcab7b.tar.gz external_llvm-ef9b9a793949469cdaa4ab6d0173136229dcab7b.tar.bz2 |
For PR411:
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33918 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Transforms')
-rw-r--r-- | include/llvm/Transforms/IPO.h | 31 |
1 files changed, 11 insertions, 20 deletions
diff --git a/include/llvm/Transforms/IPO.h b/include/llvm/Transforms/IPO.h index b24857e..6ab6d7b 100644 --- a/include/llvm/Transforms/IPO.h +++ b/include/llvm/Transforms/IPO.h @@ -87,19 +87,6 @@ ModulePass *createFunctionExtractionPass(Function *F, bool deleteFn = false, //===----------------------------------------------------------------------===// -/// FunctionResolvingPass - Go over the functions that are in the module and -/// look for functions that have the same name. More often than not, there will -/// be things like: -/// void "foo"(...) -/// void "foo"(int, int) -/// because of the way things are declared in C. If this is the case, patch -/// things up. -/// -/// This is an interprocedural pass. -/// -ModulePass *createFunctionResolvingPass(); - -//===----------------------------------------------------------------------===// /// createFunctionInliningPass - Return a new pass object that uses a heuristic /// to inline direct function calls to small functions. /// @@ -163,20 +150,24 @@ FunctionPass *createLoopExtractorPass(); /// FunctionPass *createSingleLoopExtractorPass(); -// createBlockExtractorPass - This pass extracts all blocks (except those -// specified in the argument list) from the functions in the module. -// +/// createBlockExtractorPass - This pass extracts all blocks (except those +/// specified in the argument list) from the functions in the module. +/// ModulePass *createBlockExtractorPass(std::vector<BasicBlock*> &BTNE); -// createOptimizeWellKnownCallsPass - This pass optimizes specific calls to -// specific well-known (library) functions. +/// createOptimizeWellKnownCallsPass - This pass optimizes specific calls to +/// specific well-known (library) functions. ModulePass *createSimplifyLibCallsPass(); -// createIndMemRemPass - This pass removes potential indirect calls of -// malloc and free +/// createIndMemRemPass - This pass removes potential indirect calls of +/// malloc and free ModulePass *createIndMemRemPass(); +/// createStripDeadPrototypesPass - This pass removes any function declarations +/// (prototypes) that are not used. +ModulePass *createStripDeadPrototypesPass(); + } // End llvm namespace #endif |