[llvm-commits] CVS: llvm/tools/gccld/gccld.cpp

Chris Lattner lattner at cs.uiuc.edu
Wed Apr 16 16:44:01 PDT 2003


Changes in directory llvm/tools/gccld:

gccld.cpp updated: 1.22 -> 1.23

---
Log message:

Allow the user to disable the internalize pass


---
Diffs of the changes:

Index: llvm/tools/gccld/gccld.cpp
diff -u llvm/tools/gccld/gccld.cpp:1.22 llvm/tools/gccld/gccld.cpp:1.23
--- llvm/tools/gccld/gccld.cpp:1.22	Sat Dec 14 15:28:32 2002
+++ llvm/tools/gccld/gccld.cpp	Wed Apr 16 16:43:22 2003
@@ -52,6 +52,10 @@
 static cl::opt<bool>
 Strip("s", cl::desc("Strip symbol info from executable"));
 
+static cl::opt<bool>
+NoInternalize("disable-internalize",
+              cl::desc("Do not mark all symbols as internal"));
+
 
 // FileExists - Return true if the specified string is an openable file...
 static inline bool FileExists(const std::string &FN) {
@@ -153,10 +157,13 @@
   //
   Passes.add(createFunctionResolvingPass());
 
-  // Now that composite has been compiled, scan through the module, looking for
-  // a main function.  If main is defined, mark all other functions internal.
-  //
-  Passes.add(createInternalizePass());
+  if (!NoInternalize) {
+    // Now that composite has been compiled, scan through the module, looking
+    // for a main function.  If main is defined, mark all other functions
+    // internal.
+    //
+    Passes.add(createInternalizePass());
+  }
 
   // Now that we have optimized the program, discard unreachable functions...
   //





More information about the llvm-commits mailing list