diff --git a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp index 8c389475a2c7a5d87d58741f46c42dbf16ee7561..adb089ece60bf97cd4f7b5363110b36494ab6cbc 100644 --- a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp +++ b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp @@ -277,7 +277,7 @@ static bool isObjectPointerWithTrustworthySize(const Value *V) { if (const AllocaInst *AI = dyn_cast(V)) return !AI->isArrayAllocation(); if (const GlobalVariable *GV = dyn_cast(V)) - return !GV->isWeakForLinker(); + return !GV->mayBeOverridden(); if (const Argument *A = dyn_cast(V)) return A->hasByValAttr(); return false;