diff options
author | Noah Goldstein <goldstein.w.n@gmail.com> | 2023-02-16 17:03:09 -0600 |
---|---|---|
committer | Noah Goldstein <goldstein.w.n@gmail.com> | 2023-07-06 14:46:34 -0500 |
commit | 2cb6b06c8930f5254e8fd393b81e3c96884840d3 (patch) | |
tree | 9009f0a9e181eea26d0bc401cb91e8322fd712f6 /lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp | |
parent | d0bb76f191c7b306886f4d3e72d7986d5098cc2f (diff) | |
download | llvm-2cb6b06c8930f5254e8fd393b81e3c96884840d3.zip llvm-2cb6b06c8930f5254e8fd393b81e3c96884840d3.tar.gz llvm-2cb6b06c8930f5254e8fd393b81e3c96884840d3.tar.bz2 |
[InstCombine] Add constant combines for `(urem/srem (shl X, Y), (shl X, Z))`
Forked from D142901 to deduce more `nsw`/`nuw` flag for the output
`shl`.
We can handle the following cases + some `nsw`/`nuw` flags:
The rationale for doing this all in `InstCombine` rather than handling
the constant `shl` cases in `InstSimplify` is we often create a new
instruction because we are able to deduce more `nsw`/`nuw` flags than
the original instruction had.
Differential Revision: https://reviews.llvm.org/D144225
Diffstat (limited to 'lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp')
0 files changed, 0 insertions, 0 deletions