diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1994-04-21 15:23:14 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1994-04-21 15:23:14 -0400 |
commit | 88efc60a699446d45ab56c4b80719c2e590db8c7 (patch) | |
tree | dad682683699756c585a193cc79846e4bf59511f | |
parent | 92544bdfd59b9deb0ae56887f89f6719321bc20e (diff) | |
download | gcc-88efc60a699446d45ab56c4b80719c2e590db8c7.zip gcc-88efc60a699446d45ab56c4b80719c2e590db8c7.tar.gz gcc-88efc60a699446d45ab56c4b80719c2e590db8c7.tar.bz2 |
If TREE_CODE undefined, make an incomplete union for tree.
(STDIO_PROTO): Define here if not already defined.
(read_rtx): Use STDIO_PROTO.
(output_constant_def, immed_real_const): Use "union tree_node *".
(immed_real_const_1): Move declaration to real.h.
(rtx_to_tree_code): Supply prototype.
From-SVN: r7106
-rw-r--r-- | gcc/rtl.h | 42 |
1 files changed, 21 insertions, 21 deletions
@@ -1,5 +1,5 @@ /* Register Transfer Language (RTL) definitions for GNU C-Compiler - Copyright (C) 1987, 1991, 1992, 1993 Free Software Foundation, Inc. + Copyright (C) 1987, 1991, 1992, 1993, 1994 Free Software Foundation, Inc. This file is part of GNU CC. @@ -25,6 +25,10 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #undef ABS /* Likewise. */ #undef PC /* Likewise. */ +#ifndef TREE_CODE +union tree_node; +#endif + /* Register Transfer Language EXPRESSIONS CODES */ #define RTX_CODE enum rtx_code @@ -163,6 +167,14 @@ typedef struct rtx_def #endif #endif +#ifndef STDIO_PROTO +#ifdef BUFSIZ +#define STDIO_PROTO(ARGS) PROTO(ARGS) +#else +#define STDIO_PROTO(ARGS) () +#endif +#endif + #define NULL_RTX (rtx) 0 /* Define a generic NULL if one hasn't already been defined. */ @@ -661,11 +673,7 @@ extern rtx gen_rtx PVPROTO((enum rtx_code, enum machine_mode, ...)); extern rtvec gen_rtvec PVPROTO((int, ...)); -#ifdef BUFSIZ /* stdio.h has been included */ -extern rtx read_rtx PROTO((FILE *)); -#else -extern rtx read_rtx (); -#endif +extern rtx read_rtx STDIO_PROTO((FILE *)); #if 0 /* At present, don't prototype xrealloc, since all of the callers don't @@ -898,20 +906,10 @@ extern rtx *find_single_use PROTO((rtx, rtx, rtx *)); expr.h to be included for the enumeration. */ extern rtx expand_expr (); -extern rtx immed_real_const_1(); - -#ifdef TREE_CODE -/* rtl.h and tree.h were included. */ -extern rtx output_constant_def PROTO((tree)); -extern rtx immed_real_const PROTO((tree)); -extern rtx immed_real_const_1 PROTO((REAL_VALUE_TYPE, enum machine_mode)); -extern tree make_tree PROTO((tree, rtx)); -#else -extern rtx output_constant_def (); -extern rtx immed_real_const (); -extern rtx immed_real_const_1 (); -#endif +extern rtx output_constant_def PROTO((union tree_node *)); +extern rtx immed_real_const PROTO((union tree_node *)); +extern union tree_node *make_tree PROTO((union tree_node *, rtx)); /* Define a default value for STORE_FLAG_VALUE. */ @@ -942,5 +940,7 @@ extern int cse_not_expected; extern rtx *regno_reg_rtx; /* Translates rtx code to tree code, for those codes needed by - REAL_ARITHMETIC. */ -extern int rtx_to_tree_code (); + REAL_ARITHMETIC. The function returns an int because the caller may not + know what `enum tree_code' means. */ + +extern int rtx_to_tree_code PROTO((enum rtx_code)); |