Factorize out a concept - no functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67454 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Duncan Sands
2009-03-21 21:27:31 +00:00
parent 802cd84eb4
commit 64da9409cb
4 changed files with 15 additions and 8 deletions

View File

@ -335,8 +335,7 @@ ConstantFoldMappedInstruction(const Instruction *I) {
if (ConstantExpr *CE = dyn_cast<ConstantExpr>(Ops[0]))
if (!LI->isVolatile() && CE->getOpcode() == Instruction::GetElementPtr)
if (GlobalVariable *GV = dyn_cast<GlobalVariable>(CE->getOperand(0)))
if (GV->isConstant() && !GV->isDeclaration() &&
!GV->mayBeOverridden())
if (GV->isConstant() && GV->hasDefinitiveInitializer())
return ConstantFoldLoadThroughGEPConstantExpr(GV->getInitializer(),
CE);