diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2019-04-16 19:05:49 +0000 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2019-04-16 19:05:49 +0000 |
| commit | 5ecd6a48b938b37822cbfd9f309bb14e56043d38 (patch) | |
| tree | b69d13f4edbbbf65c2c1ed00f8794cd89c8e986b /llvm/lib/Transforms/Vectorize/VPlanValue.h | |
| parent | f700081a7d977fd132b2fdaf8609627ca12e92b9 (diff) | |
| download | bcm5719-llvm-5ecd6a48b938b37822cbfd9f309bb14e56043d38.tar.gz bcm5719-llvm-5ecd6a48b938b37822cbfd9f309bb14e56043d38.zip | |
[InstCombine] Prune fshl/fshr with masked operands
If a constant shift amount is used, then only some of the LHS/RHS
operand bits are demanded and we may be able to simplify based on
that. InstCombineSimplifyDemanded already had the necessary support
for that, we just weren't calling it with fshl/fshr as root.
In particular, this allows us to relax some masked funnel shifts
into simple shifts, as shown in the tests.
Patch by Shawn Landden.
Differential Revision: https://reviews.llvm.org/D60660
llvm-svn: 358515
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/VPlanValue.h')
0 files changed, 0 insertions, 0 deletions

