diff options
Diffstat (limited to 'llvm/lib/Transforms/Scalar/InstructionCombining.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/InstructionCombining.cpp | 3 | 
1 files changed, 2 insertions, 1 deletions
| diff --git a/llvm/lib/Transforms/Scalar/InstructionCombining.cpp b/llvm/lib/Transforms/Scalar/InstructionCombining.cpp index 6d2ff0e3e53..03a7317138a 100644 --- a/llvm/lib/Transforms/Scalar/InstructionCombining.cpp +++ b/llvm/lib/Transforms/Scalar/InstructionCombining.cpp @@ -11824,7 +11824,8 @@ Instruction *InstCombiner::visitStoreInst(StoreInst &SI) {    if (SI.isVolatile()) return 0;  // Don't hack volatile stores.    // store X, null    -> turns into 'unreachable' in SimplifyCFG -  if (isa<ConstantPointerNull>(Ptr)) { +  if (isa<ConstantPointerNull>(Ptr) && +      cast<PointerType>(Ptr->getType())->getAddressSpace() == 0) {      if (!isa<UndefValue>(Val)) {        SI.setOperand(0, UndefValue::get(Val->getType()));        if (Instruction *U = dyn_cast<Instruction>(Val)) | 

