aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2021-03-04 16:27:51 -0500
committerSanjay Patel <spatel@rotateright.com>2021-03-04 17:21:32 -0500
commit1bee549737ace3a96288d8b16768aec5899fbb91 (patch)
tree921cba69acbeb12e4f36a876323b60dad228d7bc /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
parent51bd42ef9b870787afbeeffcd33adce765f70f23 (diff)
downloadllvm-1bee549737ace3a96288d8b16768aec5899fbb91.zip
llvm-1bee549737ace3a96288d8b16768aec5899fbb91.tar.gz
llvm-1bee549737ace3a96288d8b16768aec5899fbb91.tar.bz2
[LoopVectorize] propagate fast-math-flags from induction instructions
This code assumed that FP math was only permissable if it was fully "fast", so it hard-coded "fast" when creating new instructions. The underlying code already allows matching recurrences/reductions that are only "reassoc", so this change should prevent the potential miscompile seen in the test diffs (we created "fast" ops even though none existed in the original code). I don't know if we need to create the temporary IRBuilder objects used here, so that could be follow-up clean-up. There's an open question about whether we should require "nsz" in addition to "reassoc" here. InstCombine uses that combo for its reassociative folds, but I think codegen is not as strict.
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
0 files changed, 0 insertions, 0 deletions