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 | ef3682a4fbfc3ff1a593adf95740ad8ab0d1d487 (patch) | |
tree | 5d30145d3c6bbb3a435dbb7f95e6f6d4b8cd7f16 /include/llvm/Transforms/IPO.h | |
parent | d64a78c9ed62f2615ca1ea524d1f1942f798c8de (diff) | |
download | llvm-ef3682a4fbfc3ff1a593adf95740ad8ab0d1d487.tar.gz llvm-ef3682a4fbfc3ff1a593adf95740ad8ab0d1d487.tar.bz2 llvm-ef3682a4fbfc3ff1a593adf95740ad8ab0d1d487.tar.xz |
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/llvm/Transforms/IPO.h')
-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 7d98dfe604..71b3fa7b08 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); //===----------------------------------------------------------------------===// |