diff options
author | Sanjay Patel <spatel@rotateright.com> | 2017-09-22 19:37:21 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2017-09-22 19:37:21 +0000 |
commit | 3339954fa36522f31910bc8304afd5200b5919cc (patch) | |
tree | fe38f709cc966d414e2ef32986c46a6b692ea95f /lldb/packages/Python/lldbsuite/test/python_api | |
parent | f681c4e5a99cb5e743c2073c6bab4970899a3473 (diff) | |
download | bcm5719-llvm-3339954fa36522f31910bc8304afd5200b5919cc.tar.gz bcm5719-llvm-3339954fa36522f31910bc8304afd5200b5919cc.zip |
[x86] swap order of srl (and X, C1), C2 when it saves size
The (non-)obvious win comes from saving 3 bytes by using the 0x83 'and' opcode variant instead of 0x81.
There are also better improvements based on known-bits that allow us to eliminate the mask entirely.
As noted, this could be extended. There are potentially other wins from always shifting first, but doing
that reveals a tangle of problems in other pattern matching. We do this transform generically in
instcombine, but we often have icmp IR that doesn't match that pattern, so we must account for this
in the backend.
Differential Revision: https://reviews.llvm.org/D38181
llvm-svn: 314023
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api')
0 files changed, 0 insertions, 0 deletions