Expose the internalize pass.
authorChris Lattner <sabre@nondot.org>
Sun, 28 Apr 2002 05:49:53 +0000 (05:49 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 28 Apr 2002 05:49:53 +0000 (05:49 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2365 91177308-0d34-0410-b5e6-96231b3b80d8

tools/opt/opt.cpp

index c4870d833db8baac71df15b5d091446f8cadc495..cc2b0a6ce3458ce10452b7122a3c419c534af1d7 100644 (file)
@@ -20,6 +20,7 @@
 #include "llvm/Transforms/SymbolStripping.h"
 #include "llvm/Transforms/ChangeAllocations.h"
 #include "llvm/Transforms/IPO/SimpleStructMutation.h"
+#include "llvm/Transforms/IPO/Internalize.h"
 #include "llvm/Transforms/IPO/GlobalDCE.h"
 #include "llvm/Transforms/IPO/PoolAllocate.h"
 #include "llvm/Transforms/Scalar/DCE.h"
@@ -54,7 +55,7 @@ enum Opts {
   trace, tracem, paths,
 
   // Interprocedural optimizations...
-  globaldce, swapstructs, sortstructs, poolalloc,
+  internalize, globaldce, swapstructs, sortstructs, poolalloc,
 };
 
 static Pass *createPrintFunctionPass() {
@@ -100,6 +101,8 @@ struct {
   { raiseallocs, createRaiseAllocationsPass  },
   { cleangcc   , createCleanupGCCOutputPass  },
   { funcresolve, createFunctionResolvingPass },
+
+  { internalize, createInternalizePass  },
   { globaldce  , createGlobalDCEPass    },
   { swapstructs, createSwapElementsPass },
   { sortstructs, createSortElementsPass },
@@ -132,6 +135,7 @@ cl::EnumList<enum Opts> OptimizationList(cl::NoFlags,
   clEnumVal(adce       , "Agressive DCE"),
   clEnumVal(mem2reg    , "Promote alloca locations to registers"),
 
+  clEnumVal(internalize, "Mark all fn's internal except for main"),
   clEnumVal(globaldce  , "Remove unreachable globals"),
   clEnumVal(swapstructs, "Swap structure types around"),
   clEnumVal(sortstructs, "Sort structure elements"),