public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] doc: Clarify FENV_ACCESS pragma semantics WRT `-ftrapping-math'
@ 2022-07-19 12:23 Maciej W. Rozycki
  2022-07-20  7:19 ` Richard Biener
  2022-07-27 22:45 ` Joseph Myers
  0 siblings, 2 replies; 4+ messages in thread
From: Maciej W. Rozycki @ 2022-07-19 12:23 UTC (permalink / raw)
  To: gcc-patches; +Cc: Joseph Myers

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'.
---
Hi,

 Discovered in the course of investigating RISC-V unordered comparisons, 
c.f. <https://gcc.gnu.org/pipermail/gcc-patches/2022-July/597767.html>.

  Maciej
---
 gcc/doc/implement-c.texi |    3 ++-
 gcc/doc/invoke.texi      |    8 +++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

gcc-doc-fenv-access-trapping.diff
Index: gcc/gcc/doc/implement-c.texi
===================================================================
--- gcc.orig/gcc/doc/implement-c.texi
+++ gcc/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,
Index: gcc/gcc/doc/invoke.texi
===================================================================
--- gcc.orig/gcc/doc/invoke.texi
+++ gcc/gcc/doc/invoke.texi
@@ -13513,6 +13513,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
@@ -13531,7 +13536,8 @@ This option is experimental and does not
 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

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-07-28 13:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-19 12:23 [PATCH] doc: Clarify FENV_ACCESS pragma semantics WRT `-ftrapping-math' Maciej W. Rozycki
2022-07-20  7:19 ` Richard Biener
2022-07-27 22:45 ` Joseph Myers
2022-07-28 13:22   ` Maciej W. Rozycki

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).