aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/except.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cp/except.c')
-rw-r--r--gcc/cp/except.c40
1 files changed, 16 insertions, 24 deletions
diff --git a/gcc/cp/except.c b/gcc/cp/except.c
index 2fd5e6e..71421cc 100644
--- a/gcc/cp/except.c
+++ b/gcc/cp/except.c
@@ -37,6 +37,7 @@ tree protect_list;
extern void (*interim_eh_hook) PROTO((tree));
rtx expand_builtin_return_addr PROTO((enum built_in_function, int, rtx));
+static void end_eh_unwinder PROTO((rtx));
/* holds the fndecl for __builtin_return_address () */
tree builtin_return_address_fndecl;
@@ -90,8 +91,6 @@ output_exception_table_entry (file, start_label, end_label, eh_label)
FILE *file;
rtx start_label, end_label, eh_label;
{
- char label[100];
-
assemble_integer (start_label, GET_MODE_SIZE (Pmode), 1);
assemble_integer (end_label, GET_MODE_SIZE (Pmode), 1);
assemble_integer (eh_label, GET_MODE_SIZE (Pmode), 1);
@@ -146,7 +145,7 @@ asm (TEXT_SECTION_ASM_OP);
#endif
-void
+static void
exception_section ()
{
#ifdef ASM_OUTPUT_SECTION_NAME
@@ -320,15 +319,15 @@ struct ehQueue {
========================================================================= */
/* Holds the pc for doing "throw" */
-tree saved_pc;
+static tree saved_pc;
/* Holds the type of the thing being thrown. */
-tree saved_throw_type;
+static tree saved_throw_type;
/* Holds the value being thrown. */
-tree saved_throw_value;
+static tree saved_throw_value;
/* Holds the cleanup for the value being thrown. */
-tree saved_cleanup;
+static tree saved_cleanup;
-int throw_used;
+static int throw_used;
static rtx catch_clauses;
@@ -454,7 +453,8 @@ top_label_entry (labelstack)
/* Push to permanent obstack for rtl generation.
One level only! */
static struct obstack *saved_rtl_obstack;
-void
+
+static void
push_rtl_perm ()
{
extern struct obstack permanent_obstack;
@@ -468,9 +468,7 @@ push_rtl_perm ()
static void
pop_rtl_from_perm ()
{
- extern struct obstack permanent_obstack;
extern struct obstack *rtl_obstack;
-
rtl_obstack = saved_rtl_obstack;
}
@@ -587,7 +585,7 @@ new_eh_stack (stack)
}
/* cheesyness to save some typing. returns the return value rtx */
-rtx
+static rtx
do_function_call (func, params, return_type)
tree func, params, return_type;
{
@@ -603,8 +601,6 @@ static void
expand_internal_throw (pc)
rtx pc;
{
- tree params;
-
emit_move_insn (DECL_RTL (saved_pc), pc);
#ifdef JUMP_TO_THROW
emit_indirect_jump (gen_rtx (SYMBOL_REF, Pmode, "__throw"));
@@ -616,7 +612,7 @@ expand_internal_throw (pc)
/* ========================================================================= */
-void
+static void
lang_interim_eh (finalization)
tree finalization;
{
@@ -946,7 +942,7 @@ build_eh_type (exp)
}
/* This routine creates the cleanup for the exception handling object. */
-void
+static void
push_eh_cleanup ()
{
/* All cleanups must last longer than normal. */
@@ -973,7 +969,6 @@ expand_start_catch_block (declspecs, declarator)
rtx protect_label_rtx;
tree decl = NULL_TREE;
tree init;
- tree cleanup;
if (! doing_eh (1))
return;
@@ -1243,7 +1238,7 @@ do_unwind (inner_throw_label)
/* Given the return address, compute the new pc to throw. This has to
work for the current frame of the current function, and the one
above it in the case of throw. */
-rtx
+static rtx
eh_outer_context (addr)
rtx addr;
{
@@ -1306,8 +1301,6 @@ expand_builtin_throw ()
rtx return_val_rtx;
rtx gotta_rethrow_it;
rtx gotta_call_terminate;
- rtx unwind_and_throw;
- rtx goto_unwind_and_throw;
rtx top_of_loop;
rtx unwind_first;
tree t;
@@ -1331,8 +1324,6 @@ expand_builtin_throw ()
gotta_rethrow_it = gen_label_rtx ();
gotta_call_terminate = gen_label_rtx ();
- unwind_and_throw = gen_label_rtx ();
- goto_unwind_and_throw = gen_label_rtx ();
top_of_loop = gen_label_rtx ();
unwind_first = gen_label_rtx ();
@@ -1421,7 +1412,7 @@ expand_start_eh_spec ()
start_protect ();
}
-void
+static void
expand_end_eh_spec (raises)
tree raises;
{
@@ -1771,7 +1762,6 @@ emit_exception_table ()
int count = 0;
extern FILE *asm_out_file;
struct ehEntry *entry;
- tree eh_node_decl;
if (! doing_eh (0))
return;
@@ -1826,11 +1816,13 @@ build_throw (e)
return e;
}
+void
start_eh_unwinder ()
{
start_protect ();
}
+static void
end_eh_unwinder (end)
rtx end;
{