aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>1999-07-01 17:52:55 -0600
committerJeff Law <law@gcc.gnu.org>1999-07-01 17:52:55 -0600
commit2b12ffe08d94504c2dc796d087a29452b8b9b979 (patch)
tree332e8b69ff166c0727c474894761a3bab32afd23 /gcc
parent88250fae5a8447b2bd4a715c85543e089f0ed45c (diff)
downloadgcc-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.c5
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 (&reg1, &reg2, &reg3, 1);
#ifdef POINTERS_EXTEND_UNSIGNED
eh_return_context = convert_memory_address (Pmode, eh_return_context);