BTW, I'm not sure it's right to be using *_muladd for MIPS. MADD.fmt & co. were fused operations in the early MIPS IV processors, but they've had an intermediate rounding step since then (i.e. they're equivalent to a separate multiplication and addition). I'm not feeling brave enough to tackle that though.
Richard