Don't crash owhen ComputeLoadResult can't compute the result of the load.
authorNick Lewycky <nicholas@mxc.ca>
Sun, 29 May 2011 19:33:36 +0000 (19:33 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Sun, 29 May 2011 19:33:36 +0000 (19:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132290 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/IPO/GlobalOpt.cpp

index 371500bc78628db7b4e5ddda3e61afc1ec1beddd..cdf7b76dd087320d210dc174db8282fc89f973f8 100644 (file)
@@ -2444,7 +2444,7 @@ static bool EvaluateFunction(Function *F, Constant *&RetVal,
         Constant *Val = getVal(Values, MSI->getValue());
         Constant *DestVal = ComputeLoadResult(getVal(Values, Ptr),
                                               MutatedMemory);
-        if (Val->isNullValue() && DestVal->isNullValue()) {
+        if (Val->isNullValue() && DestVal && DestVal->isNullValue()) {
           // This memset is a no-op.
           ++CurInst;
           continue;