Global constants CAN be external
authorChris Lattner <sabre@nondot.org>
Fri, 18 Apr 2003 04:34:29 +0000 (04:34 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 18 Apr 2003 04:34:29 +0000 (04:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5808 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/IPO/ConstantMerge.cpp

index a73fca2b3c5269e9c6831ead3c826374b431c95a..0774cf28942466e8f6ae3c4627a05b2ec2ab70cc 100644 (file)
@@ -1,4 +1,4 @@
-//===- ConstantMerge.cpp - Merge duplicate global constants -----------------=//
+//===- ConstantMerge.cpp - Merge duplicate global constants ---------------===//
 //
 // This file defines the interface to a pass that merges duplicate global
 // constants together into a single constant that is shared.  This is useful
@@ -36,8 +36,8 @@ bool ConstantMerge::run(Module &M) {
   bool MadeChanges = false;
   
   for (Module::giterator GV = M.gbegin(), E = M.gend(); GV != E; ++GV)
-    if (GV->isConstant()) {  // Only process constants
-      assert(GV->hasInitializer() && "Globals constants must have inits!");
+    // Only process constants with initializers
+    if (GV->isConstant() && GV->hasInitializer()) {
       Constant *Init = GV->getInitializer();
 
       // Check to see if the initializer is already known...