summaryrefslogtreecommitdiff
path: root/docs/UsersManual.rst
diff options
context:
space:
mode:
authorJustin Lebar <jlebar@google.com>2016-05-20 21:33:01 +0000
committerJustin Lebar <jlebar@google.com>2016-05-20 21:33:01 +0000
commitf83d52142acb65b41010b6f8fcf006cba65429e1 (patch)
tree3f9732c7d242b554af55744bde04eddd06168843 /docs/UsersManual.rst
parent5c2e21d12f6ff7d763c7aa057b6ed36b1081ce57 (diff)
Update -ffast-math documentation to match reality.
Reviewers: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20457 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@270279 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/UsersManual.rst')
-rw-r--r--docs/UsersManual.rst13
1 files changed, 13 insertions, 0 deletions
diff --git a/docs/UsersManual.rst b/docs/UsersManual.rst
index 48a85a6ccb..b88a418d89 100644
--- a/docs/UsersManual.rst
+++ b/docs/UsersManual.rst
@@ -1055,6 +1055,19 @@ are listed below.
the behavior of sanitizers in the ``cfi`` group to allow checking
of cross-DSO virtual and indirect calls.
+.. option:: -ffast-math
+
+ Enable fast-math mode. This defines the ``__FAST_MATH__`` preprocessor
+ macro, and lets the compiler make aggressive, potentially-lossy assumptions
+ about floating-point math. These include:
+
+ * Floating-point math obeys regular algebraic rules for real numbers (e.g.
+ ``+`` and ``*`` are associative, ``x/y == x * (1/y)``, and
+ ``(a + b) * c == a * c + b * c``),
+ * operands to floating-point operations are not equal to ``NaN`` and
+ ``Inf``, and
+ * ``+0`` and ``-0`` are interchangeable.
+
.. option:: -fwhole-program-vtables
Enable whole-program vtable optimizations, such as single-implementation