diff options
author | Sanjay Patel <spatel@rotateright.com> | 2019-01-31 16:40:07 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2019-01-31 16:40:07 +0000 |
commit | 6fa5e62c25f4523ab62ec0265afc3917b9d6c16b (patch) | |
tree | 8169483d8c740f9d615a7d95686acd01ad62bcdc /llvm/lib/Transforms/Utils/ModuleUtils.cpp | |
parent | 9aa55d3c668cea6542d6cb746c51ac7038feefff (diff) | |
download | llvm-6fa5e62c25f4523ab62ec0265afc3917b9d6c16b.zip llvm-6fa5e62c25f4523ab62ec0265afc3917b9d6c16b.tar.gz llvm-6fa5e62c25f4523ab62ec0265afc3917b9d6c16b.tar.bz2 |
[PatternMatch] add special-case uaddo matching for increment-by-one
This is the most important uaddo problem mentioned in PR31754:
https://bugs.llvm.org/show_bug.cgi?id=31754
We were failing to match the canonicalized pattern when it's an 'add 1' operation.
Pattern matching, however, shouldn't assume that we have canonicalized IR, so we
match 4 commuted variants of uaddo.
There's also a test with a crazy type to show that the existing CGP transform
based on this matcher is not limited by target legality checks, but that's a
different problem.
Differential Revision: https://reviews.llvm.org/D57516
llvm-svn: 352766
Diffstat (limited to 'llvm/lib/Transforms/Utils/ModuleUtils.cpp')
0 files changed, 0 insertions, 0 deletions