aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl@gnu.ai.mit.edu>1997-08-19 15:51:10 +0000
committerJeff Law <law@gcc.gnu.org>1997-08-19 09:51:10 -0600
commite9576d2c229b3caea1c0c7fb0bd56eb1dd8537ee (patch)
tree7cf181aafb185bb77524ed8abb6d24ee1b17c180
parente933cbe00706dc7e5f991cab06966b4ebf2d361f (diff)
downloadgcc-e9576d2c229b3caea1c0c7fb0bd56eb1dd8537ee.zip
gcc-e9576d2c229b3caea1c0c7fb0bd56eb1dd8537ee.tar.gz
gcc-e9576d2c229b3caea1c0c7fb0bd56eb1dd8537ee.tar.bz2
expr.h, real.h: Finish prototyping.
* expr.h, real.h: Finish prototyping. Some of hj's prototyping stuff after minor formatting fixes. From-SVN: r14846
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/expr.h16
-rw-r--r--gcc/real.h22
3 files changed, 34 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ee98b2d..1b1beac 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -3,6 +3,10 @@ Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
* Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
(site.exp, check, check-g++, check-gcc): New targets.
+Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
+
+ * expr.h, real.h: Finish prototyping.
+
Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
* configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
diff --git a/gcc/expr.h b/gcc/expr.h
index d6bf3f6..fa7b7ed 100644
--- a/gcc/expr.h
+++ b/gcc/expr.h
@@ -315,7 +315,7 @@ typedef struct optab
#define GEN_FCN(CODE) (*insn_gen_function[(int) (CODE)])
#endif
-extern rtx (*const insn_gen_function[]) ();
+extern rtx (*const insn_gen_function[]) PROTO ((rtx, ...));
extern optab add_optab;
extern optab sub_optab;
@@ -507,7 +507,7 @@ extern rtx chkr_set_right_libfunc;
extern rtx chkr_copy_bitmap_libfunc;
extern rtx chkr_check_exec_libfunc;
-typedef rtx (*rtxfun) ();
+typedef rtx (*rtxfun) PROTO ((rtx));
/* Indexed by the rtx-code for a conditional (eg. EQ, LT,...)
gives the gen_function to make a branch to test that condition. */
@@ -595,6 +595,7 @@ rtx emit_conditional_move PROTO((rtx, enum rtx_code, rtx, rtx,
/* Return non-zero if the conditional move is supported. */
int can_conditionally_move_p PROTO((enum machine_mode mode));
+
#endif
/* Create but don't emit one rtl instruction to add one rtx into another.
@@ -931,7 +932,9 @@ extern rtx assemble_static_space PROTO((int));
/* Hook called by expand_expr for language-specific tree codes.
It is up to the language front end to install a hook
if it has any such codes that expand_expr needs to know about. */
-extern rtx (*lang_expand_expr) ();
+extern rtx (*lang_expand_expr) PROTO ((union tree_node *, rtx,
+ enum machine_mode,
+ enum expand_modifier modifier));
#ifdef TREE_CODE
/* Build bytecode call descriptor for function SUBR. */
@@ -942,3 +945,10 @@ extern rtx bc_build_calldesc PROTO((tree));
plus the minimal alignment shifted left 8 bits. */
extern tree bc_runtime_type_code PROTO((tree));
#endif
+
+extern void init_all_optabs PROTO ((void));
+extern void init_mov_optab PROTO ((void));
+extern void bc_adjust_stack PROTO ((int));
+extern void bc_load_localaddr PROTO ((rtx));
+extern void do_jump_by_parts_greater_rtx PROTO ((enum machine_mode, int,
+ rtx, rtx, rtx, rtx));
diff --git a/gcc/real.h b/gcc/real.h
index 5d4b87f..835c702 100644
--- a/gcc/real.h
+++ b/gcc/real.h
@@ -166,7 +166,8 @@ extern REAL_VALUE_TYPE ereal_from_double PROTO((HOST_WIDE_INT *));
/* These return REAL_VALUE_TYPE: */
#define REAL_VALUE_RNDZINT(x) (etrunci (x))
#define REAL_VALUE_UNSIGNED_RNDZINT(x) (etruncui (x))
-extern REAL_VALUE_TYPE real_value_truncate ();
+extern REAL_VALUE_TYPE real_value_truncate PROTO ((enum machine_mode,
+ REAL_VALUE_TYPE));
#define REAL_VALUE_TRUNCATE(mode, x) real_value_truncate (mode, x)
/* These return HOST_WIDE_INT: */
@@ -360,7 +361,8 @@ extern double (atof) ();
size and where `float' is SFmode. */
/* Don't use REAL_VALUE_TRUNCATE directly--always call real_value_truncate. */
-extern REAL_VALUE_TYPE real_value_truncate ();
+extern REAL_VALUE_TYPE real_value_truncate PROTO ((enum machine_mode,
+ REAL_VALUE_TYPE));
#ifndef REAL_VALUE_TRUNCATE
#define REAL_VALUE_TRUNCATE(mode, x) \
@@ -421,11 +423,12 @@ union real_extract
or cc0_rtx if it is not on the chain. */
#define CONST_DOUBLE_MEM(r) XEXP (r, 0)
+/* Given a CONST_DOUBLE in FROM, store into TO the value it represents. */
/* Function to return a real value (not a tree node)
from a given integer constant. */
-REAL_VALUE_TYPE real_value_from_int_cst ();
-
-/* Given a CONST_DOUBLE in FROM, store into TO the value it represents. */
+union tree_node;
+REAL_VALUE_TYPE real_value_from_int_cst PROTO ((union tree_node *,
+ union tree_node *));
#define REAL_VALUE_FROM_CONST_DOUBLE(to, from) \
do { union real_extract u; \
@@ -449,4 +452,13 @@ extern struct rtx_def *immed_real_const_1 PROTO((REAL_VALUE_TYPE,
/* Replace R by 1/R in the given machine mode, if the result is exact. */
extern int exact_real_inverse PROTO((enum machine_mode, REAL_VALUE_TYPE *));
+extern int target_isnan PROTO ((REAL_VALUE_TYPE));
+extern int target_isinf PROTO ((REAL_VALUE_TYPE));
+extern int target_negative PROTO ((REAL_VALUE_TYPE));
+extern void debug_real PROTO ((REAL_VALUE_TYPE));
+
+/* In varasm.c */
+extern void assemble_real PROTO ((REAL_VALUE_TYPE,
+ enum machine_mode));
+
#endif /* Not REAL_H_INCLUDED */