diff options
author | Kerry McLaughlin <kerry.mclaughlin@arm.com> | 2021-11-16 16:30:54 +0000 |
---|---|---|
committer | Kerry McLaughlin <kerry.mclaughlin@arm.com> | 2021-11-18 16:41:19 +0000 |
commit | ff64b2933a7df36b92630cef0e86995109a19e82 (patch) | |
tree | 7d45a93986e8a79f0b87944ca6ab0c76521ae9da /llvm/lib/CodeGen/StackProtector.cpp | |
parent | e6c66ef55e63bb0e19f435de33eb12257680120c (diff) | |
download | llvm-ff64b2933a7df36b92630cef0e86995109a19e82.zip llvm-ff64b2933a7df36b92630cef0e86995109a19e82.tar.gz llvm-ff64b2933a7df36b92630cef0e86995109a19e82.tar.bz2 |
[LoopVectorize] Check the number of uses of an FAdd before classifying as ordered
checkOrderedReductions looks for Phi nodes which can be classified as in-order,
meaning they can be vectorised without unsafe math. In order to vectorise the
reduction it should also be classified as in-loop by getReductionOpChain, which
checks that the reduction has two uses.
In this patch, a similar check is added to checkOrderedReductions so that we
now return false if there are more than two uses of the FAdd instruction.
This fixes PR52515.
Reviewed By: fhahn, david-arm
Differential Revision: https://reviews.llvm.org/D114002
Diffstat (limited to 'llvm/lib/CodeGen/StackProtector.cpp')
0 files changed, 0 insertions, 0 deletions