From: Chris Lattner Date: Sun, 18 Jul 2004 19:56:20 +0000 (+0000) Subject: Strip out and simplify some code. This also fixes the regression last X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=96940cb5223d8441f3710b75063a0ee5a3c824ed;p=oota-llvm.git Strip out and simplify some code. This also fixes the regression last night compiling cfrac. It did not realize that code like this: int G; int *H = &G; takes the address of G. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14973 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Transforms/IPO/GlobalOpt.cpp b/lib/Transforms/IPO/GlobalOpt.cpp index 3478d9de41b..6f01f25f507 100644 --- a/lib/Transforms/IPO/GlobalOpt.cpp +++ b/lib/Transforms/IPO/GlobalOpt.cpp @@ -44,16 +44,9 @@ Pass *llvm::createGlobalConstifierPass() { return new Constifier(); } /// static bool isStoredThrough(Value *V) { for (Value::use_iterator UI = V->use_begin(), E = V->use_end(); UI != E; ++UI) - if (Constant *C = dyn_cast(*UI)) { - if (ConstantExpr *CE = dyn_cast(C)) { - if (isStoredThrough(CE)) - return true; - } else if (GlobalValue *GV = dyn_cast(C)) { - if (isStoredThrough(GV)) return true; - } else { - // Must be an element of a constant array or something. + if (ConstantExpr *CE = dyn_cast(*UI)) { + if (isStoredThrough(CE)) return true; - } } else if (Instruction *I = dyn_cast(*UI)) { if (I->getOpcode() == Instruction::GetElementPtr) { if (isStoredThrough(I)) return true;