llvm / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
http://llvm.org
Other
26.82k stars 11k forks source link

SLP Vectorizer needs to refuse unsafe IEEE transformations #27778

Open rengolin opened 8 years ago

rengolin commented 8 years ago
Bugzilla Link 27404
Version trunk
OS Linux
Blocks llvm/llvm-project#27147
Attachments Integer and FP examples for vectorization candidates
CC @hfinkel

Extended Description

Just like Bug #​16275, the SLP vectorizer needs to understand when not to vectorise using NEON. If we avoid vectorization (ex. high cost), scalar VFP instructions will be chosen instead, as expected. But we should not play with costs, rather just abort vectorization in the same way we did with the loop vectorizer.

rengolin commented 8 years ago

assigned to @rengolin