aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/IPO/ArgumentPromotion.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Transforms/IPO/ArgumentPromotion.cpp')
-rw-r--r--lib/Transforms/IPO/ArgumentPromotion.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Transforms/IPO/ArgumentPromotion.cpp b/lib/Transforms/IPO/ArgumentPromotion.cpp
index 2745af893b..639c518037 100644
--- a/lib/Transforms/IPO/ArgumentPromotion.cpp
+++ b/lib/Transforms/IPO/ArgumentPromotion.cpp
@@ -93,7 +93,7 @@ bool ArgPromotion::run(Module &M) {
// See if we can transform all users to use the function directly.
while (!CPR->use_empty()) {
User *TheUser = CPR->use_back();
- if (!isa<Constant>(TheUser)) {
+ if (!isa<Constant>(TheUser) && !isa<GlobalVariable>(TheUser)) {
Changed = true;
TheUser->replaceUsesOfWith(CPR, I);
} else {
@@ -312,7 +312,7 @@ void ArgPromotion::DoPromotion(Function *F, std::vector<Argument*> &Args2Prom) {
// Otherwise, if we promoted this argument, then all users are load
// instructions, and all loads should be using the new argument that we
// added.
- /*DEBUG*/(std::cerr << "*** Promoted argument '" << I->getName()
+ DEBUG(std::cerr << "*** Promoted argument '" << I->getName()
<< "' of function '" << F->getName() << "'\n");
I2->setName(I->getName()+".val");
while (!I->use_empty()) {