[PATCH] D67552: [LangRef] Clarify fmuladd(a, b, c) can be treated as fadd (fmul a, b), c).

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 13 09:15:10 PDT 2019


reames added inline comments.


================
Comment at: llvm/docs/LangRef.rst:13954
 
 is equivalent to the expression a \* b + c, except that rounding will
 not be performed between the multiplication and addition steps if the
----------------
Please change:
"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. "

To:
"is equivalent to the expression a \* b + c, except that it is unspecified whether rounding will be performed between the multiplication and addition steps. "


================
Comment at: llvm/docs/LangRef.rst:13956
 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.*``'.
+code generator fuses the operations. The optimizer can treat `@llvm.fmuladd`
+as `fadd (fmul %a, %b), %c`, until the code generator replaces it with
----------------
Your added sentence does not parse for me.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D67552/new/

https://reviews.llvm.org/D67552





More information about the llvm-commits mailing list