disable maintenance of errno

From-SVN: r26897
This commit is contained in:
Craig Burley 1999-05-12 04:38:14 +00:00 committed by Craig Burley
parent 7d9a55eb5b
commit 41af162ca7
7 changed files with 32 additions and 2 deletions

View File

@ -1,3 +1,11 @@
Wed May 12 07:27:31 1999 Craig Burley <craig@jcb-sc.com>
Allow front end (like g77's) to override maintenance of errno:
* expr.c (expand_builtin): Bother with errno only if
flag_errno_math.
* flags.h: Declare flag_errno_math.
* toplev.c: Define flag_errno_math.
Tue May 11 23:55:49 1999 Jeffrey A Law (law@cygnus.com)
* fixproto: Change "mkdir" calls to "mkdir -p"

View File

@ -8757,7 +8757,7 @@ expand_builtin (exp, target, subtarget, mode, ignore)
/* Check the results by default. But if flag_fast_math is turned on,
then assume sqrt will always be called with valid arguments. */
if (! flag_fast_math)
if (flag_errno_math && ! flag_fast_math)
{
/* Don't define the builtin FP instructions
if your machine is not IEEE. */

View File

@ -1,3 +1,9 @@
Wed May 12 07:30:05 1999 Craig Burley <craig@jcb-sc.com>
* com.c (lang_init_options): Disable back end's maintenance
of errno.
* news.texi: Document dropping of errno.
1999-05-10 18:21 -0400 Zack Weinberg <zack@rabi.phys.columbia.edu>
* lang-specs.h: Pass -$ to the preprocessor.

View File

@ -14958,6 +14958,7 @@ lang_init_options ()
flag_move_all_movables = 1;
flag_reduce_all_givs = 1;
flag_argument_noalias = 2;
flag_errno_math = 0;
}
void

View File

@ -9,7 +9,7 @@
@c in the standalone derivations of this file (e.g. NEWS).
@set copyrights-news 1995-1999
@set last-update-news 1999-05-10
@set last-update-news 1999-05-12
@include root.texi
@ -273,6 +273,11 @@ that are not in @code{EQUIVALENCE} areas
and not @code{SAVE}'d.
@end ifclear
@item
@code{g77} no longer generates code to maintain @code{errno},
a C-language concept,
when performing operations such as the @code{SqRt} intrinsic.
@ifclear USERVISONLY
@item
A substantial portion of the @code{g77} front end's code-generation component

View File

@ -291,6 +291,11 @@ extern int flag_volatile_static;
extern int flag_fast_math;
/* Nonzero means the front end generally wants `errno' maintained by math
operations, like built-in SQRT, unless overridden by flag_fast_math. */
extern int flag_errno_math;
/* Nonzero means to run loop optimizations twice. */
extern int flag_rerun_loop_opt;

View File

@ -558,6 +558,11 @@ int flag_no_peephole = 0;
int flag_fast_math = 0;
/* Nonzero means the front end generally wants `errno' maintained by math
operations, like built-in SQRT, unless overridden by flag_fast_math. */
int flag_errno_math = 1;
/* Nonzero means all references through pointers are volatile. */
int flag_volatile;