diff options
author | Craig Topper <craig.topper@intel.com> | 2018-01-20 18:50:09 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2018-01-20 18:50:09 +0000 |
commit | 7fddf2bfeffcfa4de7b53746babe44dab94bb2ac (patch) | |
tree | d25e11afb11bd5669f1e74ab0ec086a33dbe073a /libcxx/include/algorithm | |
parent | 8cdb94901dc7a9c1fcb7732a80883c1f1876e58a (diff) | |
download | bcm5719-llvm-7fddf2bfeffcfa4de7b53746babe44dab94bb2ac.tar.gz bcm5719-llvm-7fddf2bfeffcfa4de7b53746babe44dab94bb2ac.zip |
[X86] Add an override of targetShrinkDemandedConstant to limit the damage that shrinkdemandedbits can do to zext_in_reg operations
Summary:
This patch adds an implementation of targetShrinkDemandedConstant that tries to keep shrinkdemandedbits from removing bits that would otherwise have been recognized as a movzx.
We still need a follow patch to stop moving ands across srl if the and could be represented as a movzx before the shift but not after. I think this should help with some of the cases that D42088 ended up removing during isel.
Reviewers: spatel, RKSimon
Reviewed By: spatel
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D42265
llvm-svn: 323048
Diffstat (limited to 'libcxx/include/algorithm')
0 files changed, 0 insertions, 0 deletions