Implement generic __clc_fma with __builtin_elementwise_fma for all targets except for r600. Add --spirv-ext=+SPV_KHR_fma flag to SPIR-V generation. SPIR-V target supports @llvm.fma since SPV_KHR_fma was implemented in llvm-spirv (https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/3467) and SPIR-V backend (8f8dfbf8c9f0). This PR assumes SPIR-V consumer with modern hardware supports fma.