public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: H.J. Lu <hjl@lucon.org>
To: egcs@cygnus.com
Subject: A prototype patch for expr.h/real.h
Date: Tue, 19 Aug 1997 13:19:51 -0000	[thread overview]
Message-ID: <m0x0pEb-0004ecC@ocean.lucon.org> (raw)

Hi,

Here is a prototype patch for expr.h and real.h. Please let me know
when it will be installed or tell me how to make it acceptable.

Thanks.


-- 
H.J. Lu (hjl@gnu.ai.mit.edu)
---
Tue Aug 19 07:18:34 1997  H.J. Lu  (hjl@gnu.ai.mit.edu)

	* expr.h, real.h: Finish prototyping.

Index: expr.h
===================================================================
RCS file: /home/work/cvs/gnu/egcs/expr.h,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 expr.h
--- expr.h	1997/08/16 03:48:39	1.1.1.1
+++ expr.h	1997/08/19 14:16:08
@@ -315,7 +315,7 @@
 #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_copy_bitmap_libfunc;
 extern rtx chkr_check_exec_libfunc;
 \f
-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 @@
 
 /* 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 @@
 /* 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 @@
    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));
Index: real.h
===================================================================
RCS file: /home/work/cvs/gnu/egcs/real.h,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 real.h
--- real.h	1997/08/16 03:48:42	1.1.1.1
+++ real.h	1997/08/19 14:16:08
@@ -166,7 +166,8 @@
 /* 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 @@
    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 @@
    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;				\
@@ -448,5 +451,15 @@
 
 /* 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 */

             reply	other threads:[~1997-08-19 13:19 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-08-19 13:19 H.J. Lu [this message]
1997-08-19 16:06 Probable bug in gcc/reg-stack.c (example given) Craig Burley
1997-08-19 16:06 ` A prototype patch for expr.h/real.h Jeffrey A Law

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m0x0pEb-0004ecC@ocean.lucon.org \
    --to=hjl@lucon.org \
    --cc=egcs@cygnus.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).