Implement fma and mad

I've implemented fma(x,y,z) and mad(x,y,z), as a follow-up to #6330. I'd be happy to receive comments.

Per note, this needs to be #idef LLVM34 and the then/else parts swapped.