diff options
author | Roman Lebedev <lebedev.ri@gmail.com> | 2019-10-18 19:32:47 +0000 |
---|---|---|
committer | Roman Lebedev <lebedev.ri@gmail.com> | 2019-10-18 19:32:47 +0000 |
commit | 284b6d7f4da2260d996834fd1fabec461310bc96 (patch) | |
tree | ca563c334c65f4b7816b66c7e63f151ce86875f4 /lldb/packages/Python/lldbsuite/test/commands/command/script/main.cpp | |
parent | 5c28d49314c7bb84f08c9db3acd5ff64e1c4bc2d (diff) | |
download | bcm5719-llvm-284b6d7f4da2260d996834fd1fabec461310bc96.tar.gz bcm5719-llvm-284b6d7f4da2260d996834fd1fabec461310bc96.zip |
[CVP] After proving that @llvm.with.overflow()/@llvm.sat() don't overflow, also try to prove other no-wrap
Summary:
CVP, unlike InstCombine, does not run till exaustion.
It only does a single pass.
When dealing with those special binops, if we prove that they can
safely be demoted into their usual binop form,
we do set the no-wrap we deduced. But when dealing with usual binops,
we try to deduce both no-wraps.
So if we convert e.g. @llvm.uadd.with.overflow() to `add nuw`,
we won't attempt to check whether it can be `add nuw nsw`.
This patch proposes to call `processBinOp()` on newly-created binop,
which is identical to what we do for div/rem already.
Reviewers: nikic, spatel, reames
Reviewed By: nikic
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D69183
llvm-svn: 375273
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/commands/command/script/main.cpp')
0 files changed, 0 insertions, 0 deletions