This should be OK since the sqrt intrinsic isn't supposed to be able to set errno, and the standard fma function doesn't anyway. The comment mentions others could be, but the documentation for these is very unclear. sqrt specifically says it doesn't set errno, but the others don't, though it probably shouldn't be different.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
Explicitly state in the documentation that llvm.fma and llvm.fmuladd do not set errno.
Comment Actions
LGTM.
As you point out, we should fix up the definitions of the other intrinsics w.r.t. errno, but that's a separate issue. (I had a patch to do this: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20131111/194571.html -- but it seems that unfortunately I forgot about it -- perhaps you can comment on this at some point).