From 9a2cab6e2bf1f6c2762c7d86939bd4a1477e0c3c Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 1 Jul 1999 17:53:00 -0600 Subject: [PATCH] except.c: Include intl.h. X * except.c: Include intl.h. (expand_eh_return): Set current_function_cannot_inline. (save_eh_status, restore_eh_status): Twiddle eh_return_stub_label. * function.h (struct function): Add eh_return_stub_label. * flow.c (delete_unreachable_blocks): Don't merge across EH edges. * Makefile.in (except.o): Depend on intl.h. From-SVN: r27909 --- gcc/Makefile.in | 2 +- gcc/flow.c | 1 + gcc/function.h | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 3b79e41..e5ceefe 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1475,7 +1475,7 @@ stmt.o : stmt.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h function.h \ loop.h $(RECOG_H) toplev.h output.h varray.h except.o : except.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \ function.h insn-flags.h $(EXPR_H) $(REGS_H) hard-reg-set.h \ - insn-config.h $(RECOG_H) output.h except.h toplev.h + insn-config.h $(RECOG_H) output.h except.h toplev.h intl.h expr.o : expr.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h function.h \ $(REGS_H) insn-flags.h insn-codes.h $(EXPR_H) insn-config.h $(RECOG_H) \ output.h typeclass.h hard-reg-set.h toplev.h hard-reg-set.h except.h diff --git a/gcc/flow.c b/gcc/flow.c index 8b0a769..edcee29 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -1578,6 +1578,7 @@ delete_unreachable_blocks () /* A loop because chains of blocks might be combineable. */ while ((s = b->succ) != NULL && s->succ_next == NULL + && (s->flags & EDGE_EH) == 0 && (c = s->dest) != EXIT_BLOCK_PTR && c->pred->pred_next == NULL && merge_blocks (s, b, c)) diff --git a/gcc/function.h b/gcc/function.h index 297c4f0..c25933c 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -146,6 +146,7 @@ struct function struct label_node *caught_return_label_stack; tree protect_list; rtx ehc; + rtx eh_return_stub_label; /* For expr.c. */ rtx pending_chain; -- 2.7.4