summaryrefslogtreecommitdiff
path: root/gcc/except.h
diff options
context:
space:
mode:
authorloewis <loewis@138bc75d-0d04-0410-961f-82ee72b054a4>2000-03-19 18:25:27 +0000
committerloewis <loewis@138bc75d-0d04-0410-961f-82ee72b054a4>2000-03-19 18:25:27 +0000
commit78147e84503de46c41e27d1c461a37fcaf37a25f (patch)
tree741fb4699c20e2b971024d7d050b856266030a84 /gcc/except.h
parentf2d8342774dcc55765530e12f7f6914963b9d1b7 (diff)
downloadgcc-78147e84503de46c41e27d1c461a37fcaf37a25f.tar.gz
* emit-rtl.c (push_to_full_sequence, end_full_sequence): New functions.
* except.c (emit_cleanup_handler): Use them. (expand_end_all_catch): Likewise. * function.c (fixup_var_refs): Likewise. (expand_function_end): Clear catch_clauses_last. * rtl.h (push_to_full_sequence, end_full_sequence): Declare. * except.h (struct eh_status): New field x_catch_clauses_last. (catch_clauses_last): New define. * cp/except.c (expand_exception_blocks): Clear catch_clauses_last. * java/except.c (emit_handlers): Clear catch_clauses_last. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32643 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/except.h')
-rw-r--r--gcc/except.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/except.h b/gcc/except.h
index 1087bc1dcfe..ee9ea605625 100644
--- a/gcc/except.h
+++ b/gcc/except.h
@@ -120,6 +120,8 @@ struct eh_status
/* Insns for all of the exception handlers for the current function.
They are currently emitted by the frontend code. */
rtx x_catch_clauses;
+ /* End of exception handler insn sequence. */
+ rtx x_catch_clauses_last;
/* A random data area for the front end's own use. */
struct label_node *x_false_label_stack;
/* Keeps track of the label to resume to should one want to resume
@@ -142,6 +144,7 @@ struct eh_status
#define catchstack (cfun->eh->x_catchstack)
#define ehqueue (cfun->eh->x_ehqueue)
#define catch_clauses (cfun->eh->x_catch_clauses)
+#define catch_clauses_last (cfun->eh->x_catch_clauses_last)
#define false_label_stack (cfun->eh->x_false_label_stack)
#define caught_return_label_stack (cfun->eh->x_caught_return_label_stack)
#define protect_list (cfun->eh->x_protect_list)