diff options
author | Devang Patel <dpatel@apple.com> | 2008-05-14 20:01:01 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2008-05-14 20:01:01 +0000 |
commit | 23c4b31c100190589bf59639be592a47f91ee5c9 (patch) | |
tree | 5d30145d3c6bbb3a435dbb7f95e6f6d4b8cd7f16 /include | |
parent | f1e8e550d891964106ca26667cb83d38d17fb1ae (diff) | |
download | external_llvm-23c4b31c100190589bf59639be592a47f91ee5c9.zip external_llvm-23c4b31c100190589bf59639be592a47f91ee5c9.tar.gz external_llvm-23c4b31c100190589bf59639be592a47f91ee5c9.tar.bz2 |
Simplify internalize pass. Add test case.
Patch by Matthijs Kooijman!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51114 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Transforms/IPO.h | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/include/llvm/Transforms/IPO.h b/include/llvm/Transforms/IPO.h index 7d98dfe..71b3fa7 100644 --- a/include/llvm/Transforms/IPO.h +++ b/include/llvm/Transforms/IPO.h @@ -102,12 +102,17 @@ Pass *createPruneEHPass(); //===----------------------------------------------------------------------===// /// createInternalizePass - This pass loops over all of the functions in the -/// input module, looking for a main function. If a list of symbols is -/// specified with the -internalize-public-api-* command line options, those -/// symbols are internalized. Otherwise if InternalizeEverything is set and -/// the main function is found, all other globals are marked as internal. +/// input module, internalizing all globals (functions and variables) not part +/// of the api. If a list of symbols is specified with the +/// -internalize-public-api-* command line options, those symbols are not +/// internalized and all others are. Otherwise if AllButMain is set and the +/// main function is found, all other globals are marked as internal. /// ModulePass *createInternalizePass(bool InternalizeEverything); + +/// createInternalizePass - This pass loops over all of the functions in the +/// input module, internalizing all globals (functions and variables) not in the +/// given exportList. ModulePass *createInternalizePass(const std::vector<const char *> &exportList); //===----------------------------------------------------------------------===// |