Commit 502b8322 by Andreas Jaeger Committed by Andreas Jaeger

except.c: Convert prototypes to ISO C90.

	* except.c: Convert prototypes to ISO C90.
	* except.h: Likewise.
	* emit-rtl.c: Likewise.
	* et-forest.c: Likewise.
	* et-forest.h: Likewise.
	* except.c: Likewise.
	* explow.c: Likewise.
	* expmed.c: Likewise.
	* expr.c: Likewise.
	* expr.h: Likewise.

From-SVN: r68674
parent 7080f735
...@@ -14,6 +14,16 @@ ...@@ -14,6 +14,16 @@
* dwarf2out.c: Likewise. * dwarf2out.c: Likewise.
* dwarf2out.h: Likewise. * dwarf2out.h: Likewise.
* dwarfout.c: Likewise. * dwarfout.c: Likewise.
* except.c: Likewise.
* except.h: Likewise.
* emit-rtl.c: Likewise.
* et-forest.c: Likewise.
* et-forest.h: Likewise.
* except.c: Likewise.
* explow.c: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* expr.h: Likewise.
2003-06-29 Kazu Hirata <kazu@cs.umass.edu> 2003-06-29 Kazu Hirata <kazu@cs.umass.edu>
......
/* ET-trees datastructure implementation. /* ET-trees datastructure implementation.
Contributed by Pavel Nejedly Contributed by Pavel Nejedly
Copyright (C) 2002 Free Software Foundation, Inc. Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of the libiberty library. This file is part of the libiberty library.
Libiberty is free software; you can redistribute it and/or Libiberty is free software; you can redistribute it and/or
...@@ -75,18 +75,17 @@ struct et_forest_node ...@@ -75,18 +75,17 @@ struct et_forest_node
}; };
static et_forest_occurrence_t splay PARAMS ((et_forest_occurrence_t)); static et_forest_occurrence_t splay (et_forest_occurrence_t);
static void remove_all_occurrences PARAMS ((et_forest_t, et_forest_node_t)); static void remove_all_occurrences (et_forest_t, et_forest_node_t);
static inline et_forest_occurrence_t find_leftmost_node static inline et_forest_occurrence_t find_leftmost_node
PARAMS ((et_forest_occurrence_t)); (et_forest_occurrence_t);
static inline et_forest_occurrence_t find_rightmost_node static inline et_forest_occurrence_t find_rightmost_node
PARAMS ((et_forest_occurrence_t)); (et_forest_occurrence_t);
static int calculate_value PARAMS ((et_forest_occurrence_t)); static int calculate_value (et_forest_occurrence_t);
/* Return leftmost node present in the tree roted by OCC. */ /* Return leftmost node present in the tree roted by OCC. */
static inline et_forest_occurrence_t static inline et_forest_occurrence_t
find_leftmost_node (occ) find_leftmost_node (et_forest_occurrence_t occ)
et_forest_occurrence_t occ;
{ {
while (occ->left) while (occ->left)
occ = occ->left; occ = occ->left;
...@@ -96,8 +95,7 @@ find_leftmost_node (occ) ...@@ -96,8 +95,7 @@ find_leftmost_node (occ)
/* Return rightmost node present in the tree roted by OCC. */ /* Return rightmost node present in the tree roted by OCC. */
static inline et_forest_occurrence_t static inline et_forest_occurrence_t
find_rightmost_node (occ) find_rightmost_node (et_forest_occurrence_t occ)
et_forest_occurrence_t occ;
{ {
while (occ->right) while (occ->right)
occ = occ->right; occ = occ->right;
...@@ -107,8 +105,7 @@ find_rightmost_node (occ) ...@@ -107,8 +105,7 @@ find_rightmost_node (occ)
/* Operation splay for splay tree structure representing occurrences. */ /* Operation splay for splay tree structure representing occurrences. */
static et_forest_occurrence_t static et_forest_occurrence_t
splay (node) splay (et_forest_occurrence_t node)
et_forest_occurrence_t node;
{ {
et_forest_occurrence_t parent; et_forest_occurrence_t parent;
et_forest_occurrence_t grandparent; et_forest_occurrence_t grandparent;
...@@ -339,9 +336,7 @@ splay (node) ...@@ -339,9 +336,7 @@ splay (node)
/* Remove all occurrences of the given node before destroying the node. */ /* Remove all occurrences of the given node before destroying the node. */
static void static void
remove_all_occurrences (forest, forest_node) remove_all_occurrences (et_forest_t forest, et_forest_node_t forest_node)
et_forest_t forest;
et_forest_node_t forest_node;
{ {
et_forest_occurrence_t first = forest_node->first; et_forest_occurrence_t first = forest_node->first;
et_forest_occurrence_t last = forest_node->last; et_forest_occurrence_t last = forest_node->last;
...@@ -416,8 +411,7 @@ remove_all_occurrences (forest, forest_node) ...@@ -416,8 +411,7 @@ remove_all_occurrences (forest, forest_node)
/* Calculate ET value of the given node. */ /* Calculate ET value of the given node. */
static inline int static inline int
calculate_value (node) calculate_value (et_forest_occurrence_t node)
et_forest_occurrence_t node;
{ {
int value = node->count_left; int value = node->count_left;
...@@ -437,7 +431,7 @@ calculate_value (node) ...@@ -437,7 +431,7 @@ calculate_value (node)
/* Create ET-forest structure. */ /* Create ET-forest structure. */
et_forest_t et_forest_t
et_forest_create () et_forest_create (void)
{ {
et_forest_t forest = xmalloc (sizeof (struct et_forest)); et_forest_t forest = xmalloc (sizeof (struct et_forest));
...@@ -451,8 +445,7 @@ et_forest_create () ...@@ -451,8 +445,7 @@ et_forest_create ()
/* Deallocate the structure. */ /* Deallocate the structure. */
void void
et_forest_delete (forest) et_forest_delete (et_forest_t forest)
et_forest_t forest;
{ {
if (forest->nnodes) if (forest->nnodes)
abort (); abort ();
...@@ -464,9 +457,7 @@ et_forest_delete (forest) ...@@ -464,9 +457,7 @@ et_forest_delete (forest)
/* Create new node with VALUE and return the edge. /* Create new node with VALUE and return the edge.
Return NULL when memory allocation failed. */ Return NULL when memory allocation failed. */
et_forest_node_t et_forest_node_t
et_forest_add_node (forest, value) et_forest_add_node (et_forest_t forest, void *value)
et_forest_t forest;
void *value;
{ {
/* Create node with one occurrence. */ /* Create node with one occurrence. */
et_forest_node_t node; et_forest_node_t node;
...@@ -489,10 +480,8 @@ et_forest_add_node (forest, value) ...@@ -489,10 +480,8 @@ et_forest_add_node (forest, value)
/* Add new edge to the tree, return 1 if successful. /* Add new edge to the tree, return 1 if successful.
0 indicates that creation of the edge will close the cycle in graph. */ 0 indicates that creation of the edge will close the cycle in graph. */
int int
et_forest_add_edge (forest, parent_node, child_node) et_forest_add_edge (et_forest_t forest ATTRIBUTE_UNUSED,
et_forest_t forest ATTRIBUTE_UNUSED; et_forest_node_t parent_node, et_forest_node_t child_node)
et_forest_node_t parent_node;
et_forest_node_t child_node;
{ {
et_forest_occurrence_t new_occ, parent_occ, child_occ; et_forest_occurrence_t new_occ, parent_occ, child_occ;
...@@ -534,9 +523,7 @@ et_forest_add_edge (forest, parent_node, child_node) ...@@ -534,9 +523,7 @@ et_forest_add_edge (forest, parent_node, child_node)
/* Remove NODE from the tree and all connected edges. */ /* Remove NODE from the tree and all connected edges. */
void void
et_forest_remove_node (forest, node) et_forest_remove_node (et_forest_t forest, et_forest_node_t node)
et_forest_t forest;
et_forest_node_t node;
{ {
remove_all_occurrences (forest, node); remove_all_occurrences (forest, node);
forest->nnodes--; forest->nnodes--;
...@@ -547,10 +534,9 @@ et_forest_remove_node (forest, node) ...@@ -547,10 +534,9 @@ et_forest_remove_node (forest, node)
/* Remove edge from the tree, return 1 if successful, /* Remove edge from the tree, return 1 if successful,
0 indicates nonexisting edge. */ 0 indicates nonexisting edge. */
int int
et_forest_remove_edge (forest, parent_node, child_node) et_forest_remove_edge (et_forest_t forest ATTRIBUTE_UNUSED,
et_forest_t forest ATTRIBUTE_UNUSED; et_forest_node_t parent_node,
et_forest_node_t parent_node; et_forest_node_t child_node)
et_forest_node_t child_node;
{ {
et_forest_occurrence_t parent_pre_occ, parent_post_occ; et_forest_occurrence_t parent_pre_occ, parent_post_occ;
...@@ -587,9 +573,7 @@ et_forest_remove_edge (forest, parent_node, child_node) ...@@ -587,9 +573,7 @@ et_forest_remove_edge (forest, parent_node, child_node)
/* Return the parent of the NODE if any, NULL otherwise. */ /* Return the parent of the NODE if any, NULL otherwise. */
et_forest_node_t et_forest_node_t
et_forest_parent (forest, node) et_forest_parent (et_forest_t forest ATTRIBUTE_UNUSED, et_forest_node_t node)
et_forest_t forest ATTRIBUTE_UNUSED;
et_forest_node_t node;
{ {
splay (node->first); splay (node->first);
...@@ -603,10 +587,8 @@ et_forest_parent (forest, node) ...@@ -603,10 +587,8 @@ et_forest_parent (forest, node)
/* Return nearest common ancestor of NODE1 and NODE2. /* Return nearest common ancestor of NODE1 and NODE2.
Return NULL of they are in different trees. */ Return NULL of they are in different trees. */
et_forest_node_t et_forest_node_t
et_forest_common_ancestor (forest, node1, node2) et_forest_common_ancestor (et_forest_t forest ATTRIBUTE_UNUSED,
et_forest_t forest ATTRIBUTE_UNUSED; et_forest_node_t node1, et_forest_node_t node2)
et_forest_node_t node1;
et_forest_node_t node2;
{ {
int value1, value2, max_value; int value1, value2, max_value;
et_forest_node_t ancestor; et_forest_node_t ancestor;
...@@ -649,9 +631,8 @@ et_forest_common_ancestor (forest, node1, node2) ...@@ -649,9 +631,8 @@ et_forest_common_ancestor (forest, node1, node2)
/* Return the value pointer of node set during it's creation. */ /* Return the value pointer of node set during it's creation. */
void * void *
et_forest_node_value (forest, node) et_forest_node_value (et_forest_t forest ATTRIBUTE_UNUSED,
et_forest_t forest ATTRIBUTE_UNUSED; et_forest_node_t node)
et_forest_node_t node;
{ {
/* Alloc threading NULL as a special node of the forest. */ /* Alloc threading NULL as a special node of the forest. */
if (!node) if (!node)
...@@ -662,10 +643,8 @@ et_forest_node_value (forest, node) ...@@ -662,10 +643,8 @@ et_forest_node_value (forest, node)
/* Find all sons of NODE and store them into ARRAY allocated by the caller. /* Find all sons of NODE and store them into ARRAY allocated by the caller.
Return number of nodes found. */ Return number of nodes found. */
int int
et_forest_enumerate_sons (forest, node, array) et_forest_enumerate_sons (et_forest_t forest ATTRIBUTE_UNUSED,
et_forest_t forest ATTRIBUTE_UNUSED; et_forest_node_t node, et_forest_node_t *array)
et_forest_node_t node;
et_forest_node_t *array;
{ {
int n = 0; int n = 0;
et_forest_occurrence_t occ = node->first, stop = node->last, occ1; et_forest_occurrence_t occ = node->first, stop = node->last, occ1;
......
/* Et-forest data structure implementation. /* Et-forest data structure implementation.
Copyright (C) 2002 Free Software Foundation, Inc. Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by it under the terms of the GNU General Public License as published by
...@@ -58,23 +58,23 @@ extern "C" { ...@@ -58,23 +58,23 @@ extern "C" {
typedef struct et_forest *et_forest_t; typedef struct et_forest *et_forest_t;
typedef struct et_forest_node *et_forest_node_t; typedef struct et_forest_node *et_forest_node_t;
extern et_forest_t et_forest_create PARAMS ((void)); extern et_forest_t et_forest_create (void);
extern void et_forest_delete PARAMS ((et_forest_t)); extern void et_forest_delete (et_forest_t);
extern et_forest_node_t et_forest_add_node PARAMS ((et_forest_t, void *)); extern et_forest_node_t et_forest_add_node (et_forest_t, void *);
extern int et_forest_add_edge PARAMS ((et_forest_t, et_forest_node_t, extern int et_forest_add_edge (et_forest_t, et_forest_node_t,
et_forest_node_t)); et_forest_node_t);
extern void et_forest_remove_node PARAMS ((et_forest_t, et_forest_node_t)); extern void et_forest_remove_node (et_forest_t, et_forest_node_t);
extern int et_forest_remove_edge PARAMS ((et_forest_t, et_forest_node_t, extern int et_forest_remove_edge (et_forest_t, et_forest_node_t,
et_forest_node_t)); et_forest_node_t);
extern et_forest_node_t et_forest_parent PARAMS ((et_forest_t, et_forest_node_t)); extern et_forest_node_t et_forest_parent (et_forest_t, et_forest_node_t);
extern et_forest_node_t et_forest_common_ancestor PARAMS ((et_forest_t, extern et_forest_node_t et_forest_common_ancestor (et_forest_t,
et_forest_node_t, et_forest_node_t,
et_forest_node_t)); et_forest_node_t);
extern void * et_forest_node_value PARAMS ((et_forest_t, et_forest_node_t)); extern void * et_forest_node_value (et_forest_t, et_forest_node_t);
extern int et_forest_enumerate_sons PARAMS ((et_forest_t, et_forest_node_t, extern int et_forest_enumerate_sons (et_forest_t, et_forest_node_t,
et_forest_node_t *)); et_forest_node_t *);
#ifdef __cplusplus #ifdef __cplusplus
} }
......
/* Exception Handling interface routines. /* Exception Handling interface routines.
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
Free Software Foundation, Inc. Free Software Foundation, Inc.
Contributed by Mike Stump <mrs@cygnus.com>. Contributed by Mike Stump <mrs@cygnus.com>.
...@@ -33,95 +33,94 @@ struct eh_status; ...@@ -33,95 +33,94 @@ struct eh_status;
struct eh_region; struct eh_region;
/* Test: is exception handling turned on? */ /* Test: is exception handling turned on? */
extern int doing_eh PARAMS ((int)); extern int doing_eh (int);
/* Start an exception handling region. All instructions emitted after /* Start an exception handling region. All instructions emitted after
this point are considered to be part of the region until an this point are considered to be part of the region until an
expand_eh_region_end variant is invoked. */ expand_eh_region_end variant is invoked. */
extern void expand_eh_region_start PARAMS ((void)); extern void expand_eh_region_start (void);
/* End an exception handling region for a cleanup. HANDLER is an /* End an exception handling region for a cleanup. HANDLER is an
expression to expand for the cleanup. */ expression to expand for the cleanup. */
extern void expand_eh_region_end_cleanup PARAMS ((tree)); extern void expand_eh_region_end_cleanup (tree);
/* End an exception handling region for a try block, and prepares /* End an exception handling region for a try block, and prepares
for subsequent calls to expand_start_catch. */ for subsequent calls to expand_start_catch. */
extern void expand_start_all_catch PARAMS ((void)); extern void expand_start_all_catch (void);
/* Begin a catch clause. TYPE is an object to be matched by the /* Begin a catch clause. TYPE is an object to be matched by the
runtime, or a list of such objects, or null if this is a catch-all runtime, or a list of such objects, or null if this is a catch-all
clause. */ clause. */
extern void expand_start_catch PARAMS ((tree)); extern void expand_start_catch (tree);
/* End a catch clause. Control will resume after the try/catch block. */ /* End a catch clause. Control will resume after the try/catch block. */
extern void expand_end_catch PARAMS ((void)); extern void expand_end_catch (void);
/* End a sequence of catch handlers for a try block. */ /* End a sequence of catch handlers for a try block. */
extern void expand_end_all_catch PARAMS ((void)); extern void expand_end_all_catch (void);
/* End an exception region for an exception type filter. ALLOWED is a /* End an exception region for an exception type filter. ALLOWED is a
TREE_LIST of TREE_VALUE objects to be matched by the runtime. TREE_LIST of TREE_VALUE objects to be matched by the runtime.
FAILURE is a function to invoke if a mismatch occurs. */ FAILURE is a function to invoke if a mismatch occurs. */
extern void expand_eh_region_end_allowed PARAMS ((tree, tree)); extern void expand_eh_region_end_allowed (tree, tree);
/* End an exception region for a must-not-throw filter. FAILURE is a /* End an exception region for a must-not-throw filter. FAILURE is a
function to invoke if an uncaught exception propagates this far. */ function to invoke if an uncaught exception propagates this far. */
extern void expand_eh_region_end_must_not_throw PARAMS ((tree)); extern void expand_eh_region_end_must_not_throw (tree);
/* End an exception region for a throw. No handling goes on here, /* End an exception region for a throw. No handling goes on here,
but it's the easiest way for the front-end to indicate what type but it's the easiest way for the front-end to indicate what type
is being thrown. */ is being thrown. */
extern void expand_eh_region_end_throw PARAMS ((tree)); extern void expand_eh_region_end_throw (tree);
/* End a fixup region. Within this region the cleanups for the immediately /* End a fixup region. Within this region the cleanups for the immediately
enclosing region are _not_ run. This is used for goto cleanup to avoid enclosing region are _not_ run. This is used for goto cleanup to avoid
destroying an object twice. */ destroying an object twice. */
extern void expand_eh_region_end_fixup PARAMS ((tree)); extern void expand_eh_region_end_fixup (tree);
/* Note that the current EH region (if any) may contain a throw, or a /* Note that the current EH region (if any) may contain a throw, or a
call to a function which itself may contain a throw. */ call to a function which itself may contain a throw. */
extern void note_eh_region_may_contain_throw PARAMS ((void)); extern void note_eh_region_may_contain_throw (void);
/* Invokes CALLBACK for every exception handler label. Only used by old /* Invokes CALLBACK for every exception handler label. Only used by old
loop hackery; should not be used by new code. */ loop hackery; should not be used by new code. */
extern void for_each_eh_label PARAMS ((void (*) (rtx))); extern void for_each_eh_label (void (*) (rtx));
/* Determine if the given INSN can throw an exception. */ /* Determine if the given INSN can throw an exception. */
extern bool can_throw_internal PARAMS ((rtx)); extern bool can_throw_internal (rtx);
extern bool can_throw_external PARAMS ((rtx)); extern bool can_throw_external (rtx);
/* Set current_function_nothrow and cfun->all_throwers_are_sibcalls. */ /* Set current_function_nothrow and cfun->all_throwers_are_sibcalls. */
extern void set_nothrow_function_flags PARAMS ((void)); extern void set_nothrow_function_flags (void);
/* After initial rtl generation, call back to finish generating /* After initial rtl generation, call back to finish generating
exception support code. */ exception support code. */
extern void finish_eh_generation PARAMS ((void)); extern void finish_eh_generation (void);
extern void init_eh PARAMS ((void)); extern void init_eh (void);
extern void init_eh_for_function PARAMS ((void)); extern void init_eh_for_function (void);
extern rtx reachable_handlers PARAMS ((rtx)); extern rtx reachable_handlers (rtx);
extern void maybe_remove_eh_handler PARAMS ((rtx)); extern void maybe_remove_eh_handler (rtx);
extern void convert_from_eh_region_ranges PARAMS ((void)); extern void convert_from_eh_region_ranges (void);
extern void convert_to_eh_region_ranges PARAMS ((void)); extern void convert_to_eh_region_ranges (void);
extern void find_exception_handler_labels PARAMS ((void)); extern void find_exception_handler_labels (void);
extern bool current_function_has_exception_handlers PARAMS ((void)); extern bool current_function_has_exception_handlers (void);
extern void output_function_exception_table PARAMS ((void)); extern void output_function_exception_table (void);
extern void expand_builtin_unwind_init PARAMS ((void)); extern void expand_builtin_unwind_init (void);
extern rtx expand_builtin_eh_return_data_regno PARAMS ((tree)); extern rtx expand_builtin_eh_return_data_regno (tree);
extern rtx expand_builtin_extract_return_addr PARAMS ((tree)); extern rtx expand_builtin_extract_return_addr (tree);
extern void expand_builtin_init_dwarf_reg_sizes PARAMS ((tree)); extern void expand_builtin_init_dwarf_reg_sizes (tree);
extern rtx expand_builtin_frob_return_addr PARAMS ((tree)); extern rtx expand_builtin_frob_return_addr (tree);
extern rtx expand_builtin_dwarf_sp_column PARAMS ((void)); extern rtx expand_builtin_dwarf_sp_column (void);
extern void expand_builtin_eh_return PARAMS ((tree, tree)); extern void expand_builtin_eh_return (tree, tree);
extern void expand_eh_return PARAMS ((void)); extern void expand_eh_return (void);
extern rtx get_exception_pointer PARAMS ((struct function *)); extern rtx get_exception_pointer (struct function *);
extern int duplicate_eh_regions PARAMS ((struct function *, extern int duplicate_eh_regions (struct function *, struct inline_remap *);
struct inline_remap *));
extern void sjlj_emit_function_exit_after PARAMS ((rtx)); extern void sjlj_emit_function_exit_after (rtx);
/* If non-NULL, this is a function that returns an expression to be /* If non-NULL, this is a function that returns an expression to be
...@@ -130,13 +129,13 @@ extern void sjlj_emit_function_exit_after PARAMS ((rtx)); ...@@ -130,13 +129,13 @@ extern void sjlj_emit_function_exit_after PARAMS ((rtx));
during stack unwinding is required to result in a call to during stack unwinding is required to result in a call to
`std::terminate', so the C++ version of this function returns a `std::terminate', so the C++ version of this function returns a
CALL_EXPR for `std::terminate'. */ CALL_EXPR for `std::terminate'. */
extern tree (*lang_protect_cleanup_actions) PARAMS ((void)); extern tree (*lang_protect_cleanup_actions) (void);
/* Return true if type A catches type B. */ /* Return true if type A catches type B. */
extern int (*lang_eh_type_covers) PARAMS ((tree a, tree b)); extern int (*lang_eh_type_covers) (tree a, tree b);
/* Map a type to a runtime object to match type. */ /* Map a type to a runtime object to match type. */
extern tree (*lang_eh_runtime_type) PARAMS ((tree)); extern tree (*lang_eh_runtime_type) (tree);
/* Just because the user configured --with-sjlj-exceptions=no doesn't /* Just because the user configured --with-sjlj-exceptions=no doesn't
......
/* Subroutines for manipulating rtx's in semantically interesting ways. /* Subroutines for manipulating rtx's in semantically interesting ways.
Copyright (C) 1987, 1991, 1994, 1995, 1996, 1997, 1998, Copyright (C) 1987, 1991, 1994, 1995, 1996, 1997, 1998,
1999, 2000, 2001, 2002 Free Software Foundation, Inc. 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
This file is part of GCC. This file is part of GCC.
...@@ -38,16 +38,14 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA ...@@ -38,16 +38,14 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "recog.h" #include "recog.h"
#include "langhooks.h" #include "langhooks.h"
static rtx break_out_memory_refs PARAMS ((rtx)); static rtx break_out_memory_refs (rtx);
static void emit_stack_probe PARAMS ((rtx)); static void emit_stack_probe (rtx);
/* Truncate and perhaps sign-extend C as appropriate for MODE. */ /* Truncate and perhaps sign-extend C as appropriate for MODE. */
HOST_WIDE_INT HOST_WIDE_INT
trunc_int_for_mode (c, mode) trunc_int_for_mode (HOST_WIDE_INT c, enum machine_mode mode)
HOST_WIDE_INT c;
enum machine_mode mode;
{ {
int width = GET_MODE_BITSIZE (mode); int width = GET_MODE_BITSIZE (mode);
...@@ -78,9 +76,7 @@ trunc_int_for_mode (c, mode) ...@@ -78,9 +76,7 @@ trunc_int_for_mode (c, mode)
This function should be used via the `plus_constant' macro. */ This function should be used via the `plus_constant' macro. */
rtx rtx
plus_constant_wide (x, c) plus_constant_wide (rtx x, HOST_WIDE_INT c)
rtx x;
HOST_WIDE_INT c;
{ {
RTX_CODE code; RTX_CODE code;
rtx y; rtx y;
...@@ -206,9 +202,7 @@ plus_constant_wide (x, c) ...@@ -206,9 +202,7 @@ plus_constant_wide (x, c)
it is not isomorphic to X. */ it is not isomorphic to X. */
rtx rtx
eliminate_constant_term (x, constptr) eliminate_constant_term (rtx x, rtx *constptr)
rtx x;
rtx *constptr;
{ {
rtx x0, x1; rtx x0, x1;
rtx tem; rtx tem;
...@@ -244,8 +238,7 @@ eliminate_constant_term (x, constptr) ...@@ -244,8 +238,7 @@ eliminate_constant_term (x, constptr)
/* Return an rtx for the size in bytes of the value of EXP. */ /* Return an rtx for the size in bytes of the value of EXP. */
rtx rtx
expr_size (exp) expr_size (tree exp)
tree exp;
{ {
tree size = (*lang_hooks.expr_size) (exp); tree size = (*lang_hooks.expr_size) (exp);
...@@ -259,8 +252,7 @@ expr_size (exp) ...@@ -259,8 +252,7 @@ expr_size (exp)
if the size can vary or is larger than an integer. */ if the size can vary or is larger than an integer. */
HOST_WIDE_INT HOST_WIDE_INT
int_expr_size (exp) int_expr_size (tree exp)
tree exp;
{ {
tree t = (*lang_hooks.expr_size) (exp); tree t = (*lang_hooks.expr_size) (exp);
...@@ -292,8 +284,7 @@ int_expr_size (exp) ...@@ -292,8 +284,7 @@ int_expr_size (exp)
Values returned by expand_expr with 1 for sum_ok fit this constraint. */ Values returned by expand_expr with 1 for sum_ok fit this constraint. */
static rtx static rtx
break_out_memory_refs (x) break_out_memory_refs (rtx x)
rtx x;
{ {
if (GET_CODE (x) == MEM if (GET_CODE (x) == MEM
|| (CONSTANT_P (x) && CONSTANT_ADDRESS_P (x) || (CONSTANT_P (x) && CONSTANT_ADDRESS_P (x)
...@@ -321,9 +312,7 @@ break_out_memory_refs (x) ...@@ -321,9 +312,7 @@ break_out_memory_refs (x)
used. */ used. */
rtx rtx
convert_memory_address (to_mode, x) convert_memory_address (enum machine_mode to_mode, rtx x)
enum machine_mode to_mode;
rtx x;
{ {
enum machine_mode from_mode = to_mode == ptr_mode ? Pmode : ptr_mode; enum machine_mode from_mode = to_mode == ptr_mode ? Pmode : ptr_mode;
rtx temp; rtx temp;
...@@ -409,8 +398,7 @@ convert_memory_address (to_mode, x) ...@@ -409,8 +398,7 @@ convert_memory_address (to_mode, x)
but then you wouldn't get indexed addressing in the reference. */ but then you wouldn't get indexed addressing in the reference. */
rtx rtx
copy_all_regs (x) copy_all_regs (rtx x)
rtx x;
{ {
if (GET_CODE (x) == REG) if (GET_CODE (x) == REG)
{ {
...@@ -439,9 +427,7 @@ copy_all_regs (x) ...@@ -439,9 +427,7 @@ copy_all_regs (x)
works by copying X or subexpressions of it into registers. */ works by copying X or subexpressions of it into registers. */
rtx rtx
memory_address (mode, x) memory_address (enum machine_mode mode, rtx x)
enum machine_mode mode;
rtx x;
{ {
rtx oldx = x; rtx oldx = x;
...@@ -569,9 +555,7 @@ memory_address (mode, x) ...@@ -569,9 +555,7 @@ memory_address (mode, x)
/* Like `memory_address' but pretend `flag_force_addr' is 0. */ /* Like `memory_address' but pretend `flag_force_addr' is 0. */
rtx rtx
memory_address_noforce (mode, x) memory_address_noforce (enum machine_mode mode, rtx x)
enum machine_mode mode;
rtx x;
{ {
int ambient_force_addr = flag_force_addr; int ambient_force_addr = flag_force_addr;
rtx val; rtx val;
...@@ -586,8 +570,7 @@ memory_address_noforce (mode, x) ...@@ -586,8 +570,7 @@ memory_address_noforce (mode, x)
Pass through anything else unchanged. */ Pass through anything else unchanged. */
rtx rtx
validize_mem (ref) validize_mem (rtx ref)
rtx ref;
{ {
if (GET_CODE (ref) != MEM) if (GET_CODE (ref) != MEM)
return ref; return ref;
...@@ -604,9 +587,7 @@ validize_mem (ref) ...@@ -604,9 +587,7 @@ validize_mem (ref)
appropriate. */ appropriate. */
void void
maybe_set_unchanging (ref, t) maybe_set_unchanging (rtx ref, tree t)
rtx ref;
tree t;
{ {
/* We can set RTX_UNCHANGING_P from TREE_READONLY for decls whose /* We can set RTX_UNCHANGING_P from TREE_READONLY for decls whose
initialization is only executed once, or whose initializer always initialization is only executed once, or whose initializer always
...@@ -635,8 +616,7 @@ maybe_set_unchanging (ref, t) ...@@ -635,8 +616,7 @@ maybe_set_unchanging (ref, t)
Perhaps even if it is a MEM, if there is no need to change it. */ Perhaps even if it is a MEM, if there is no need to change it. */
rtx rtx
stabilize (x) stabilize (rtx x)
rtx x;
{ {
if (GET_CODE (x) != MEM if (GET_CODE (x) != MEM
|| ! rtx_unstable_p (XEXP (x, 0))) || ! rtx_unstable_p (XEXP (x, 0)))
...@@ -649,8 +629,7 @@ stabilize (x) ...@@ -649,8 +629,7 @@ stabilize (x)
/* Copy the value or contents of X to a new temp reg and return that reg. */ /* Copy the value or contents of X to a new temp reg and return that reg. */
rtx rtx
copy_to_reg (x) copy_to_reg (rtx x)
rtx x;
{ {
rtx temp = gen_reg_rtx (GET_MODE (x)); rtx temp = gen_reg_rtx (GET_MODE (x));
...@@ -669,8 +648,7 @@ copy_to_reg (x) ...@@ -669,8 +648,7 @@ copy_to_reg (x)
in case X is a constant. */ in case X is a constant. */
rtx rtx
copy_addr_to_reg (x) copy_addr_to_reg (rtx x)
rtx x;
{ {
return copy_to_mode_reg (Pmode, x); return copy_to_mode_reg (Pmode, x);
} }
...@@ -679,9 +657,7 @@ copy_addr_to_reg (x) ...@@ -679,9 +657,7 @@ copy_addr_to_reg (x)
in case X is a constant. */ in case X is a constant. */
rtx rtx
copy_to_mode_reg (mode, x) copy_to_mode_reg (enum machine_mode mode, rtx x)
enum machine_mode mode;
rtx x;
{ {
rtx temp = gen_reg_rtx (mode); rtx temp = gen_reg_rtx (mode);
...@@ -706,9 +682,7 @@ copy_to_mode_reg (mode, x) ...@@ -706,9 +682,7 @@ copy_to_mode_reg (mode, x)
since we mark it as a "constant" register. */ since we mark it as a "constant" register. */
rtx rtx
force_reg (mode, x) force_reg (enum machine_mode mode, rtx x)
enum machine_mode mode;
rtx x;
{ {
rtx temp, insn, set; rtx temp, insn, set;
...@@ -749,8 +723,7 @@ force_reg (mode, x) ...@@ -749,8 +723,7 @@ force_reg (mode, x)
that reg. Otherwise, return X. */ that reg. Otherwise, return X. */
rtx rtx
force_not_mem (x) force_not_mem (rtx x)
rtx x;
{ {
rtx temp; rtx temp;
...@@ -767,9 +740,7 @@ force_not_mem (x) ...@@ -767,9 +740,7 @@ force_not_mem (x)
MODE is the mode to use for X in case it is a constant. */ MODE is the mode to use for X in case it is a constant. */
rtx rtx
copy_to_suggested_reg (x, target, mode) copy_to_suggested_reg (rtx x, rtx target, enum machine_mode mode)
rtx x, target;
enum machine_mode mode;
{ {
rtx temp; rtx temp;
...@@ -789,11 +760,8 @@ copy_to_suggested_reg (x, target, mode) ...@@ -789,11 +760,8 @@ copy_to_suggested_reg (x, target, mode)
FOR_CALL is nonzero if this call is promoting args for a call. */ FOR_CALL is nonzero if this call is promoting args for a call. */
enum machine_mode enum machine_mode
promote_mode (type, mode, punsignedp, for_call) promote_mode (tree type, enum machine_mode mode, int *punsignedp,
tree type; int for_call ATTRIBUTE_UNUSED)
enum machine_mode mode;
int *punsignedp;
int for_call ATTRIBUTE_UNUSED;
{ {
enum tree_code code = TREE_CODE (type); enum tree_code code = TREE_CODE (type);
int unsignedp = *punsignedp; int unsignedp = *punsignedp;
...@@ -832,8 +800,7 @@ promote_mode (type, mode, punsignedp, for_call) ...@@ -832,8 +800,7 @@ promote_mode (type, mode, punsignedp, for_call)
This pops when ADJUST is positive. ADJUST need not be constant. */ This pops when ADJUST is positive. ADJUST need not be constant. */
void void
adjust_stack (adjust) adjust_stack (rtx adjust)
rtx adjust;
{ {
rtx temp; rtx temp;
adjust = protect_from_queue (adjust, 0); adjust = protect_from_queue (adjust, 0);
...@@ -863,8 +830,7 @@ adjust_stack (adjust) ...@@ -863,8 +830,7 @@ adjust_stack (adjust)
This pushes when ADJUST is positive. ADJUST need not be constant. */ This pushes when ADJUST is positive. ADJUST need not be constant. */
void void
anti_adjust_stack (adjust) anti_adjust_stack (rtx adjust)
rtx adjust;
{ {
rtx temp; rtx temp;
adjust = protect_from_queue (adjust, 0); adjust = protect_from_queue (adjust, 0);
...@@ -894,8 +860,7 @@ anti_adjust_stack (adjust) ...@@ -894,8 +860,7 @@ anti_adjust_stack (adjust)
by this machine. SIZE is the desired size, which need not be constant. */ by this machine. SIZE is the desired size, which need not be constant. */
rtx rtx
round_push (size) round_push (rtx size)
rtx size;
{ {
int align = PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT; int align = PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT;
...@@ -933,14 +898,11 @@ round_push (size) ...@@ -933,14 +898,11 @@ round_push (size)
are emitted at the current position. */ are emitted at the current position. */
void void
emit_stack_save (save_level, psave, after) emit_stack_save (enum save_level save_level, rtx *psave, rtx after)
enum save_level save_level;
rtx *psave;
rtx after;
{ {
rtx sa = *psave; rtx sa = *psave;
/* The default is that we use a move insn and save in a Pmode object. */ /* The default is that we use a move insn and save in a Pmode object. */
rtx (*fcn) PARAMS ((rtx, rtx)) = gen_move_insn; rtx (*fcn) (rtx, rtx) = gen_move_insn;
enum machine_mode mode = STACK_SAVEAREA_MODE (save_level); enum machine_mode mode = STACK_SAVEAREA_MODE (save_level);
/* See if this machine has anything special to do for this kind of save. */ /* See if this machine has anything special to do for this kind of save. */
...@@ -1016,13 +978,10 @@ emit_stack_save (save_level, psave, after) ...@@ -1016,13 +978,10 @@ emit_stack_save (save_level, psave, after)
current position. */ current position. */
void void
emit_stack_restore (save_level, sa, after) emit_stack_restore (enum save_level save_level, rtx sa, rtx after)
enum save_level save_level;
rtx after;
rtx sa;
{ {
/* The default is that we use a move insn. */ /* The default is that we use a move insn. */
rtx (*fcn) PARAMS ((rtx, rtx)) = gen_move_insn; rtx (*fcn) (rtx, rtx) = gen_move_insn;
/* See if this machine has anything special to do for this kind of save. */ /* See if this machine has anything special to do for this kind of save. */
switch (save_level) switch (save_level)
...@@ -1083,8 +1042,7 @@ emit_stack_restore (save_level, sa, after) ...@@ -1083,8 +1042,7 @@ emit_stack_restore (save_level, sa, after)
frame, thus causing a crash if a longjmp unwinds to it. */ frame, thus causing a crash if a longjmp unwinds to it. */
void void
optimize_save_area_alloca (insns) optimize_save_area_alloca (rtx insns)
rtx insns;
{ {
rtx insn; rtx insn;
...@@ -1168,10 +1126,7 @@ optimize_save_area_alloca (insns) ...@@ -1168,10 +1126,7 @@ optimize_save_area_alloca (insns)
KNOWN_ALIGN is the alignment (in bits) that we know SIZE has. */ KNOWN_ALIGN is the alignment (in bits) that we know SIZE has. */
rtx rtx
allocate_dynamic_stack_space (size, target, known_align) allocate_dynamic_stack_space (rtx size, rtx target, int known_align)
rtx size;
rtx target;
int known_align;
{ {
#ifdef SETJMP_VIA_SAVE_AREA #ifdef SETJMP_VIA_SAVE_AREA
rtx setjmpless_size = NULL_RTX; rtx setjmpless_size = NULL_RTX;
...@@ -1416,8 +1371,7 @@ allocate_dynamic_stack_space (size, target, known_align) ...@@ -1416,8 +1371,7 @@ allocate_dynamic_stack_space (size, target, known_align)
static GTY(()) rtx stack_check_libfunc; static GTY(()) rtx stack_check_libfunc;
void void
set_stack_check_libfunc (libfunc) set_stack_check_libfunc (rtx libfunc)
rtx libfunc;
{ {
stack_check_libfunc = libfunc; stack_check_libfunc = libfunc;
} }
...@@ -1425,8 +1379,7 @@ set_stack_check_libfunc (libfunc) ...@@ -1425,8 +1379,7 @@ set_stack_check_libfunc (libfunc)
/* Emit one stack probe at ADDRESS, an address within the stack. */ /* Emit one stack probe at ADDRESS, an address within the stack. */
static void static void
emit_stack_probe (address) emit_stack_probe (rtx address)
rtx address;
{ {
rtx memref = gen_rtx_MEM (word_mode, address); rtx memref = gen_rtx_MEM (word_mode, address);
...@@ -1451,9 +1404,7 @@ emit_stack_probe (address) ...@@ -1451,9 +1404,7 @@ emit_stack_probe (address)
#endif #endif
void void
probe_stack_range (first, size) probe_stack_range (HOST_WIDE_INT first, rtx size)
HOST_WIDE_INT first;
rtx size;
{ {
/* First ensure SIZE is Pmode. */ /* First ensure SIZE is Pmode. */
if (GET_MODE (size) != VOIDmode && GET_MODE (size) != Pmode) if (GET_MODE (size) != VOIDmode && GET_MODE (size) != Pmode)
...@@ -1585,10 +1536,8 @@ probe_stack_range (first, size) ...@@ -1585,10 +1536,8 @@ probe_stack_range (first, size)
and 0 otherwise. */ and 0 otherwise. */
rtx rtx
hard_function_value (valtype, func, outgoing) hard_function_value (tree valtype, tree func ATTRIBUTE_UNUSED,
tree valtype; int outgoing ATTRIBUTE_UNUSED)
tree func ATTRIBUTE_UNUSED;
int outgoing ATTRIBUTE_UNUSED;
{ {
rtx val; rtx val;
...@@ -1631,8 +1580,7 @@ hard_function_value (valtype, func, outgoing) ...@@ -1631,8 +1580,7 @@ hard_function_value (valtype, func, outgoing)
in which a scalar value of mode MODE was returned by a library call. */ in which a scalar value of mode MODE was returned by a library call. */
rtx rtx
hard_libcall_value (mode) hard_libcall_value (enum machine_mode mode)
enum machine_mode mode;
{ {
return LIBCALL_VALUE (mode); return LIBCALL_VALUE (mode);
} }
...@@ -1643,8 +1591,7 @@ hard_libcall_value (mode) ...@@ -1643,8 +1591,7 @@ hard_libcall_value (mode)
what `enum tree_code' means. */ what `enum tree_code' means. */
int int
rtx_to_tree_code (code) rtx_to_tree_code (enum rtx_code code)
enum rtx_code code;
{ {
enum tree_code tcode; enum tree_code tcode;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment