diff options
author | Chad Rosier <mcrosier@codeaurora.org> | 2018-02-04 15:42:24 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@codeaurora.org> | 2018-02-04 15:42:24 +0000 |
commit | a097bc69df64cede9d0eb94441aa57f8ef7d9777 (patch) | |
tree | a97f03320d124fe55cf73d565fac603f995dc29d /llvm/lib/Transforms/Utils/InlineFunction.cpp | |
parent | c6b3c7bb635352c7d228140ed0816befe2096944 (diff) | |
download | llvm-a097bc69df64cede9d0eb94441aa57f8ef7d9777.zip llvm-a097bc69df64cede9d0eb94441aa57f8ef7d9777.tar.gz llvm-a097bc69df64cede9d0eb94441aa57f8ef7d9777.tar.bz2 |
[LV] Use Demanded Bits and ValueTracking for reduction type-shrinking
The type-shrinking logic in reduction detection, although narrow in scope, is
also rather ad-hoc, which has led to bugs (e.g., PR35734). This patch modifies
the approach to rely on the demanded bits and value tracking analyses, if
available. We currently perform type-shrinking separately for reductions and
other instructions in the loop. Long-term, we should probably think about
computing minimal bit widths in a more complete way for the loops we want to
vectorize.
PR35734
Differential Revision: https://reviews.llvm.org/D42309
llvm-svn: 324195
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
0 files changed, 0 insertions, 0 deletions