ARM: disable emission of __XYZvfp in soft-float environment.

The point of these calls is to allow Thumb-1 code to make use of the VFP unit
to perform its operations. This is not desirable with -msoft-float, since most
of the reasons you'd want that apply equally to the runtime library.

rdar://problem/13766161
AArch64/ARM64: mark fmul intrinsic as commutative.

This gives DAG patterns matching indexed patterns where either side is an
indexed vector.
AArch64/ARM64: add patterns for scalar_to_vector/extract pairs
AArch64/ARM64: enable various AArch64 tests on ARM64.