diff options
author | Nikita Popov <nikita.ppv@gmail.com> | 2020-12-22 21:20:56 +0100 |
---|---|---|
committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-12-27 17:39:02 +0100 |
commit | 0af42d3dc73e8f08e37811131c31358ecb9adf20 (patch) | |
tree | 29c3d3def098b45102a4527b6da1e75b16bd2191 /llvm/tools/llvm-size/llvm-size.cpp | |
parent | fb77d95022198edebde3e4cb2807eaeea2156d85 (diff) | |
download | llvm-0af42d3dc73e8f08e37811131c31358ecb9adf20.zip llvm-0af42d3dc73e8f08e37811131c31358ecb9adf20.tar.gz llvm-0af42d3dc73e8f08e37811131c31358ecb9adf20.tar.bz2 |
[PatternMatch][LVI] Handle select-form and/or in LVI
Following the discussion in D93065, this adds m_LogicalAnd() and
m_LogicalOr() matchers, that match A && B and A || B logical
operations, either as bitwise operations or select expressions.
As an example usage, LVI is adapted to use these matchers for its
condition reasoning.
The plan here is to switch other parts of LLVM that reason about
and/or of conditions to also support the select forms, and then
merge D93065 (or a variant thereof) to disable the poison-unsafe
select to and/or transform.
Differential Revision: https://reviews.llvm.org/D93827
Diffstat (limited to 'llvm/tools/llvm-size/llvm-size.cpp')
0 files changed, 0 insertions, 0 deletions