diff options
author | Roman Lebedev <lebedev.ri@gmail.com> | 2018-09-13 20:33:12 +0000 |
---|---|---|
committer | Roman Lebedev <lebedev.ri@gmail.com> | 2018-09-13 20:33:12 +0000 |
commit | 6dc87004fab4b34076e6f0f8505316e40b9ea2fb (patch) | |
tree | 006a78021884c24eae7db013688b12e3786d5d46 /lldb/scripts/Python | |
parent | d565b0f017e216aa5693484249628d03e98e8d27 (diff) | |
download | llvm-6dc87004fab4b34076e6f0f8505316e40b9ea2fb.zip llvm-6dc87004fab4b34076e6f0f8505316e40b9ea2fb.tar.gz llvm-6dc87004fab4b34076e6f0f8505316e40b9ea2fb.tar.bz2 |
[InstCombine] Inefficient pattern for high-bits checking 2 (PR38708)
Summary:
It is sometimes important to check that some newly-computed value
is non-negative and only n bits wide (where n is a variable.)
There are many ways to check that:
https://godbolt.org/z/o4RB8D
The last variant seems best?
(I'm sure there are some other variations i haven't thought of..)
More complicated, canonical pattern:
https://rise4fun.com/Alive/uhA
We do need to have two `switch()`'es like this,
to not mismatch the swappable predicates.
https://bugs.llvm.org/show_bug.cgi?id=38708
Reviewers: spatel, craig.topper, RKSimon
Reviewed By: spatel
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D52001
llvm-svn: 342173
Diffstat (limited to 'lldb/scripts/Python')
0 files changed, 0 insertions, 0 deletions