toplev.c: Allow -f[no-]math-errno to set (clear) flag_errno_math
authorBrad Lucier <lucier@math.purdue.edu>
Thu, 16 Sep 1999 01:17:50 +0000 (01:17 +0000)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 16 Sep 1999 01:17:50 +0000 (18:17 -0700)
        * toplev.c: Allow -f[no-]math-errno to set (clear) flag_errno_math
        * invoke.texi: Document this change.

From-SVN: r29449

gcc/ChangeLog
gcc/invoke.texi
gcc/toplev.c

index 63a9a6f120ab6aeeff84a64734ea2dc80922012e..ca9080695cb93a6a0511b8668fd163da2668b6c6 100644 (file)
@@ -1,3 +1,8 @@
+1999-09-15  Brad Lucier  <lucier@math.purdue.edu>
+
+       * toplev.c: Allow -f[no-]math-errno to set (clear) flag_errno_math
+       * invoke.texi: Document this change.
+
 Wed Sep 15 17:56:00 1999  Richard Henderson  <rth@cygnus.com>
 
        * emit-rtl.c (free_emit_status): Don't check DECL_DEFER_OUTPUT.
index fa5370ed14da27fe149a1b845611a022601a1dca..43bd7498df3b88c99b4673a2a47c2d15ae282007 100644 (file)
@@ -154,7 +154,7 @@ in the following sections.
 -falign-jumps=@var{n}  -fbranch-probabilities  
 -fcaller-saves  -fcse-follow-jumps  -fcse-skip-blocks
 -fdelayed-branch   -fexpensive-optimizations
--ffast-math  -ffloat-store  -fforce-addr  -fforce-mem
+-ffast-math  -ffloat-store  -fforce-addr  -fforce-mem -fno-math-errno
 -fdata-sections  -ffunction-sections  -fgcse 
 -finline-functions  -finline-limit=@var{n}  -fkeep-inline-functions
 -fmove-all-movables  -fno-default-inline  -fno-defer-pop
@@ -2409,6 +2409,15 @@ This option should never be turned on by any @samp{-O} option since
 it can result in incorrect output for programs which depend on
 an exact implementation of IEEE or ANSI rules/specifications for
 math functions.
+
+@item -fno-math-errno
+Do not set ERRNO after calling math functions that are executed
+with a single instruction, e.g., sqrt.  A program that relies on
+IEEE exceptions for math error handling may want to use this flag
+for speed while maintaining IEEE arithmetic compatibility.
+
+The default is @samp{-fmath-errno}.  The @samp{-ffast-math} option
+sets @samp{-fno-math-errno}.
 @end table
 
 @c following causes underfulls.. they don't look great, but we deal.
index aa3d62ed1d8547f7cd22b643b72e5c3ec642f7c9..9fe0e9eae798e2a360be1af1e26de01edd809621 100644 (file)
@@ -969,7 +969,9 @@ lang_independent_options f_options[] =
   {"ident", &flag_no_ident, 0,
    "Process #ident directives"},
   { "peephole2", &flag_peephole2, 1,
-    "Enables an rtl peephole pass run before sched2" }
+    "Enables an rtl peephole pass run before sched2" },
+  {"math-errno", &flag_errno_math, 1,
+   "Set errno after built-in math functions"}
 };
 
 #define NUM_ELEM(a)  (sizeof (a) / sizeof ((a)[0]))