diff options
author | Jan Hubicka <jh@suse.cz> | 2009-03-28 10:08:52 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2009-03-28 09:08:52 +0000 |
commit | a8ee227c046930794867e48c6478b0b04e3bd137 (patch) | |
tree | 4ebe94b877890d5f85418fb99ec4730610bcb172 /gcc/except.h | |
parent | aa2785717fa51750bfd24c965744283c405be851 (diff) | |
download | gcc-a8ee227c046930794867e48c6478b0b04e3bd137.zip gcc-a8ee227c046930794867e48c6478b0b04e3bd137.tar.gz gcc-a8ee227c046930794867e48c6478b0b04e3bd137.tar.bz2 |
tree-eh.c (inlinable_call_p): New function.
* tree-eh.c (inlinable_call_p): New function.
(make_eh_edges): Use it.
(verify_eh_edges): Use it.
(stmt_can_throw_external, stmt_can_throw_internal): Use it.
* except.c (reachable_next_level): Add inlinable_function argument
(sjlj_find_directly_reachable_regions): Update.
(add_reachable_handler): Do not set saw_any_handlers.
(reachable_next_level): Handle MUST_NOT_THROW more curefully.
(foreach_reachable_handler, can_throw_internal_1, can_throw_external_1):
Add new inlinable call parameter.
(can_throw_internal, can_throw_external): Update.
* except.h (can_throw_internal_1, can_throw_external_1,
foreach_reachable_handler): Update declaration.
From-SVN: r145166
Diffstat (limited to 'gcc/except.h')
-rw-r--r-- | gcc/except.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/except.h b/gcc/except.h index 9f83a99..b32312e 100644 --- a/gcc/except.h +++ b/gcc/except.h @@ -44,9 +44,9 @@ extern void for_each_eh_label (void (*) (rtx)); extern void for_each_eh_region (void (*) (struct eh_region *)); /* Determine if the given INSN can throw an exception. */ -extern bool can_throw_internal_1 (int, bool); +extern bool can_throw_internal_1 (int, bool, bool); extern bool can_throw_internal (const_rtx); -extern bool can_throw_external_1 (int, bool); +extern bool can_throw_external_1 (int, bool, bool); extern bool can_throw_external (const_rtx); /* Set TREE_NOTHROW and cfun->all_throwers_are_sibcalls. */ @@ -97,7 +97,7 @@ extern bool get_eh_region_may_contain_throw (struct eh_region *); extern tree get_eh_region_tree_label (struct eh_region *); extern void set_eh_region_tree_label (struct eh_region *, tree); -extern void foreach_reachable_handler (int, bool, +extern void foreach_reachable_handler (int, bool, bool, void (*) (struct eh_region *, void *), void *); |