From: Florian Hahn Date: Wed, 25 Sep 2019 16:09:24 +0000 (+0000) Subject: [LangRef] Clarify absence of rounding guarantees for fmuladd. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=314fba3fbfd99a0a94d19229c5060f625d3f080e;p=llvm [LangRef] Clarify absence of rounding guarantees for fmuladd. During the review of D67434, it was recommended to make fmuladd's behavior more explicit. D67434 depends on this interpretation. Reviewers: efriedma, jfb, reames, scanon, lebedev.ri, spatel Reviewed By: spatel Differential Revision: https://reviews.llvm.org/D67552 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@372892 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/docs/LangRef.rst b/docs/LangRef.rst index a38356aa27e..ac1db593ac8 100644 --- a/docs/LangRef.rst +++ b/docs/LangRef.rst @@ -13959,12 +13959,12 @@ The expression: %0 = call float @llvm.fmuladd.f32(%a, %b, %c) -is equivalent to the expression a \* b + c, except that rounding will -not be performed between the multiplication and addition steps if the -code generator fuses the operations. Fusion is not guaranteed, even if -the target platform supports it. If a fused multiply-add is required, the -corresponding :ref:`llvm.fma ` intrinsic function should be used -instead. This never sets errno, just as '``llvm.fma.*``'. +is equivalent to the expression a \* b + c, except that it is unspecified +whether rounding will be performed between the multiplication and addition +steps. Fusion is not guaranteed, even if the target platform supports it. +If a fused multiply-add is required, the corresponding +:ref:`llvm.fma ` intrinsic function should be used instead. +This never sets errno, just as '``llvm.fma.*``'. Examples: """""""""