This patch addresses the performance and security problem shown here:
http://llvm.org/bugs/show_bug.cgi?id=20358
Because of unintended operations on denorms, it may be a severe performance loss to transform shuffle ops on FP vectors. Don't do that unless we're working with unsafe algebra (ie, -ffast-math) where it's likely that denorms are being ignored or flushed.