diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2019-05-31 20:42:07 +0000 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2019-05-31 20:42:07 +0000 |
| commit | 23a02f6a5fa5892136fb57e573ae2e3bcc929d10 (patch) | |
| tree | 6916fdd3da68bb0fbd69f4b5fe7f54f4dc8d69df /llvm/lib | |
| parent | f711d594272e77dda08764d2f5bf2d8d8508ee92 (diff) | |
| download | bcm5719-llvm-23a02f6a5fa5892136fb57e573ae2e3bcc929d10.tar.gz bcm5719-llvm-23a02f6a5fa5892136fb57e573ae2e3bcc929d10.zip | |
[CVP] Fix assertion failure on vector with.overflow
Noticed on D62703. LVI only handles plain integers, not vectors of
integers. This was previously not an issue, because vector support
for with.overflow is only a relatively recent addition.
llvm-svn: 362261
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp b/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp index eab49b5f8b3..9ec2afb99d6 100644 --- a/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp +++ b/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp @@ -434,7 +434,7 @@ static bool processCallSite(CallSite CS, LazyValueInfo *LVI) { unsigned ArgNo = 0; if (auto *WO = dyn_cast<WithOverflowInst>(CS.getInstruction())) { - if (willNotOverflow(WO, LVI)) { + if (WO->getLHS()->getType()->isIntegerTy() && willNotOverflow(WO, LVI)) { processOverflowIntrinsic(WO); return true; } |

