summaryrefslogtreecommitdiff
path: root/gcc/real.h
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1997-08-19 15:51:10 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1997-08-19 15:51:10 +0000
commitcaca85bd2fb7e09fe61f628dd354e9022e1f4352 (patch)
tree7cf181aafb185bb77524ed8abb6d24ee1b17c180 /gcc/real.h
parent6c08487bc2fff10f547353eafedc0c7134f3df27 (diff)
downloadgcc-caca85bd2fb7e09fe61f628dd354e9022e1f4352.tar.gz
* expr.h, real.h: Finish prototyping.
Some of hj's prototyping stuff after minor formatting fixes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14846 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/real.h')
-rw-r--r--gcc/real.h22
1 files changed, 17 insertions, 5 deletions
diff --git a/gcc/real.h b/gcc/real.h
index 5d4b87fe6b0..835c702f7d3 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 */