Warning fixes, resulting in the addition of a new target macro:

* tm.texi (DEFAULT_RTX_COSTS): Document new macro.
        * arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
        * cse.c (rtx_cost): Provide a default case in an enumeration
        switch, and call DEFAULT_RTX_COSTS if it's defined.

Co-Authored-By: Nick Clifton <nickc@cygnus.com>
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>

From-SVN: r18513
This commit is contained in:
Kaveh R. Ghazi 1998-03-12 12:32:24 +00:00 committed by Kaveh Ghazi
parent 27d7e05d4a
commit 8625fab57c
4 changed files with 34 additions and 3 deletions

View File

@ -1,3 +1,14 @@
Thu Mar 12 15:13:16 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
Richard Earnshaw <rearnsha@arm.com>
Nick Clifton <nickc@cygnus.com>
* tm.texi (DEFAULT_RTX_COSTS): Document new macro.
* arm.h (DEFAULT_RTX_COSTS): Define instead of RTX_COSTS.
* cse.c (rtx_cost): Provide a default case in an enumeration
switch, and call DEFAULT_RTX_COSTS if it's defined.
Thu Mar 12 10:02:38 1998 Manfred Hollstein <manfred@s-direktnet.de>
* basic-block.h (compute_preds_succs): Change return type in

View File

@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler, for Acorn RISC Machine.
Copyright (C) 1991, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
Copyright (C) 1991, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc.
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
and Martin Simmons (@harleqn.co.uk).
More major hacks by Richard Earnshaw (rwe11@cl.cam.ac.uk)
@ -1620,8 +1620,7 @@ extern struct rtx_def *legitimize_pic_address ();
((X) == frame_pointer_rtx || (X) == stack_pointer_rtx \
|| (X) == arg_pointer_rtx)
#define RTX_COSTS(X,CODE,OUTER_CODE) \
default: \
#define DEFAULT_RTX_COSTS(X,CODE,OUTER_CODE) \
return arm_rtx_costs (X, CODE, OUTER_CODE);
/* Moves to and from memory are quite expensive */

View File

@ -751,6 +751,12 @@ rtx_cost (x, outer_code)
RTX_COSTS (x, code, outer_code);
#endif
CONST_COSTS (x, code, outer_code);
default:
#ifdef DEFAULT_RTX_COSTS
DEFAULT_RTX_COSTS(x, code, outer_code);
#endif
break;
}
/* Sum the costs of the sub-rtx's, plus cost of this operation,

View File

@ -4436,6 +4436,21 @@ instructions. @var{outer_code} is the code of the expression in which
This macro is optional; do not define it if the default cost assumptions
are adequate for the target machine.
@findex DEFAULT_RTX_COSTS
@item DEFAULT_RTX_COSTS (@var{x}, @var{code}, @var{outer_code})
This macro, if defined, is called for any case not handled by the
@code{RTX_COSTS} or @code{CONST_COSTS} macros. This eliminates the need
to put case labels into the macro, but the code, or any functions it
calls, must assume that the RTL in @var{x} could be of any type that has
not already been handled. The arguments are the same as for
@code{RTX_COSTS}, and the macro should execute a return statement giving
the cost of any RTL expressions that it can handle. The default cost
calculation is used for any RTL for which this macro does not return a
value.
This macro is optional; do not define it if the default cost assumptions
are adequate for the target machine.
@findex ADDRESS_COST
@item ADDRESS_COST (@var{address})
An expression giving the cost of an addressing mode that contains