diff options
author | Richard Henderson <rth@cygnus.com> | 1999-07-01 17:52:55 -0600 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-07-01 17:52:55 -0600 |
commit | 2b12ffe08d94504c2dc796d087a29452b8b9b979 (patch) | |
tree | 332e8b69ff166c0727c474894761a3bab32afd23 /gcc | |
parent | 88250fae5a8447b2bd4a715c85543e089f0ed45c (diff) | |
download | gcc-2b12ffe08d94504c2dc796d087a29452b8b9b979.zip gcc-2b12ffe08d94504c2dc796d087a29452b8b9b979.tar.gz gcc-2b12ffe08d94504c2dc796d087a29452b8b9b979.tar.bz2 |
except.c: Include intl.h.
�
* 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: r27908
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/except.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/except.c b/gcc/except.c index fe139fd..f7d78d6 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -406,6 +406,7 @@ Boston, MA 02111-1307, USA. */ #include "recog.h" #include "output.h" #include "toplev.h" +#include "intl.h" #include "obstack.h" /* One to use setjmp/longjmp method of generating code for exception @@ -2446,6 +2447,7 @@ save_eh_status (p) p->caught_return_label_stack = caught_return_label_stack; p->protect_list = protect_list; p->ehc = current_function_ehc; + p->eh_return_stub_label = eh_return_stub_label; init_eh_for_function (); } @@ -2469,6 +2471,7 @@ restore_eh_status (p) ehstack = p->ehstack; catchstack = p->catchstack; current_function_ehc = p->ehc; + eh_return_stub_label = p->eh_return_stub_label; } /* This section is for the exception handling specific optimization @@ -2792,6 +2795,8 @@ expand_eh_return () if (!eh_return_context) return; + current_function_cannot_inline = N_("function uses __builtin_eh_return"); + eh_regs (®1, ®2, ®3, 1); #ifdef POINTERS_EXTEND_UNSIGNED eh_return_context = convert_memory_address (Pmode, eh_return_context); |