[LoopUtils] Fix neutral value for vector.reduce.fadd
authorNikita Popov <nikita.ppv@gmail.com>
Thu, 29 Oct 2020 20:41:58 +0000 (21:41 +0100)
committerNikita Popov <nikita.ppv@gmail.com>
Thu, 29 Oct 2020 20:45:13 +0000 (21:45 +0100)
commit20b386aae07fc6e9db6fc1e58a56c8ff080e4352
treea107c65d22b67d8fe2f3751ecf0cdf97c9c3ca2c
parent2c0cbc47cae4e69195a883771664ef3d5a54c7d2
[LoopUtils] Fix neutral value for vector.reduce.fadd

Use -0.0 instead of 0.0 as the start value. The previous use of 0.0
was fine for all existing uses of this function though, as it is
always generated with fast flags right now, and thus nsz.
13 files changed:
llvm/lib/Transforms/Utils/LoopUtils.cpp
llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
llvm/test/Transforms/LoopVectorize/X86/imprecise-through-phis.ll
llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-expanded.ll
llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
llvm/test/Transforms/SLPVectorizer/X86/horizontal.ll
llvm/test/Transforms/SLPVectorizer/X86/reverse_extract_elements.ll