aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@embecosm.com>2022-07-28 14:04:33 +0100
committerMaciej W. Rozycki <macro@embecosm.com>2022-07-28 14:04:33 +0100
commite32ca426242f0e3c650f3122342792ad42255511 (patch)
tree81c58b388bce8e9c27954e303633597601b46974
parent94f5a8f0d4910be2d861f7a9699e93efd609d042 (diff)
downloadgcc-e32ca426242f0e3c650f3122342792ad42255511.zip
gcc-e32ca426242f0e3c650f3122342792ad42255511.tar.gz
gcc-e32ca426242f0e3c650f3122342792ad42255511.tar.bz2
doc: Clarify FENV_ACCESS pragma semantics WRT `-ftrapping-math'
Our documentation indicates that it is the `-frounding-math' invocation option that controls whether we respect what the FENV_ACCESS pragma would imply, should we implement it, regarding the floating point environment. It is only a part of the picture however, because the `-ftrapping-math' invocation option also affects how we handle said environment. Clarify that in the description of both options then, as well as the FENV_ACCESS pragma itself. gcc/ * doc/implement-c.texi (Floating point implementation): Mention `-fno-trapping-math' in the context of FENV_ACCESS pragma. * doc/invoke.texi (Optimize Options): Clarify FENV_ACCESS pragma implication in the descriptions of `-fno-trapping-math' and `-frounding-math'.
-rw-r--r--gcc/doc/implement-c.texi3
-rw-r--r--gcc/doc/invoke.texi8
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/doc/implement-c.texi b/gcc/doc/implement-c.texi
index 93b8dda..c2088ff 100644
--- a/gcc/doc/implement-c.texi
+++ b/gcc/doc/implement-c.texi
@@ -339,7 +339,8 @@ This is subject to change.
7.6.1).}
This pragma is not implemented, but the default is to ``off'' unless
-@option{-frounding-math} is used in which case it is ``on''.
+@option{-frounding-math} is used and @option{-fno-trapping-math} is not
+in which case it is ``on''.
@item
@cite{Additional floating-point exceptions, rounding modes, environments,
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index fa23fbe..fd7edd1 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -13674,6 +13674,11 @@ math functions.
The default is @option{-ftrapping-math}.
+Future versions of GCC may provide finer control of this setting
+using C99's @code{FENV_ACCESS} pragma. This command-line option
+will be used along with @option{-frounding-math} to specify the
+default state for @code{FENV_ACCESS}.
+
@item -frounding-math
@opindex frounding-math
Disable transformations and optimizations that assume default floating-point
@@ -13692,7 +13697,8 @@ This option is experimental and does not currently guarantee to
disable all GCC optimizations that are affected by rounding mode.
Future versions of GCC may provide finer control of this setting
using C99's @code{FENV_ACCESS} pragma. This command-line option
-will be used to specify the default state for @code{FENV_ACCESS}.
+will be used along with @option{-ftrapping-math} to specify the
+default state for @code{FENV_ACCESS}.
@item -fsignaling-nans
@opindex fsignaling-nans