mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-27 07:45:35 +00:00
[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 llvm-svn: 372892
This commit is contained in:
parent
41615ea364
commit
8ea72d111c
@ -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 <int_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 <int_fma>` intrinsic function should be used instead.
|
||||
This never sets errno, just as '``llvm.fma.*``'.
|
||||
|
||||
Examples:
|
||||
"""""""""
|
||||
|
Loading…
x
Reference in New Issue
Block a user