diff options
Diffstat (limited to 'llvm/lib/Transforms/LevelRaise.cpp')
| -rw-r--r-- | llvm/lib/Transforms/LevelRaise.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/Transforms/LevelRaise.cpp b/llvm/lib/Transforms/LevelRaise.cpp index b2008b08a13..327735c0586 100644 --- a/llvm/lib/Transforms/LevelRaise.cpp +++ b/llvm/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 |

