diff options
Diffstat (limited to 'lib/Transforms/LevelRaise.cpp')
-rw-r--r-- | lib/Transforms/LevelRaise.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/lib/Transforms/LevelRaise.cpp b/lib/Transforms/LevelRaise.cpp index b2008b08a1..327735c058 100644 --- a/lib/Transforms/LevelRaise.cpp +++ b/lib/Transforms/LevelRaise.cpp @@ -393,8 +393,7 @@ static bool PeepholeOptimize(BasicBlock *BB, BasicBlock::iterator &BI) { if (Value *CastSrc = CI->getOperand(0)) // CSPT = CastSrcPointerType if (const PointerType *CSPT = dyn_cast<PointerType>(CastSrc->getType())) // convertable types? - if (Val->getType()->isLosslesslyConvertableTo(CSPT->getElementType()) && - !SI->hasIndices()) { // No subscripts yet! + if (Val->getType()->isLosslesslyConvertableTo(CSPT->getElementType())) { PRINT_PEEPHOLE3("st-src-cast:in ", Pointer, Val, SI); // Insert the new T cast instruction... stealing old T's name @@ -433,8 +432,7 @@ static bool PeepholeOptimize(BasicBlock *BB, BasicBlock::iterator &BI) { if (Value *CastSrc = CI->getOperand(0)) // CSPT = CastSrcPointerType if (const PointerType *CSPT = dyn_cast<PointerType>(CastSrc->getType())) // convertable types? - if (PtrElType->isLosslesslyConvertableTo(CSPT->getElementType()) && - !LI->hasIndices()) { // No subscripts yet! + if (PtrElType->isLosslesslyConvertableTo(CSPT->getElementType())) { PRINT_PEEPHOLE2("load-src-cast:in ", Pointer, LI); // Create the new load instruction... loading the pre-casted value |