diff options
author | Jan Hubicka <jh@suse.cz> | 2007-01-14 11:47:48 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2007-01-14 10:47:48 +0000 |
commit | 4437b50d212393791a10cf46c45fabebe199ece2 (patch) | |
tree | ba3d2a54e12acf5a6f8ebf12cf291d3eb2f05ffb /gcc/cfgexpand.c | |
parent | 843b634331abe3739193f745e5dbf66abc6dfd6f (diff) | |
download | gcc-4437b50d212393791a10cf46c45fabebe199ece2.zip gcc-4437b50d212393791a10cf46c45fabebe199ece2.tar.gz gcc-4437b50d212393791a10cf46c45fabebe199ece2.tar.bz2 |
tree-eh.c (add_stmt_to_eh_region_fn): Do not add call_exprs separately.
* tree-eh.c (add_stmt_to_eh_region_fn): Do not add call_exprs
separately.
(remove_stmt_from_eh_region_fn): Do not remove call_exprs.
(verify_eh_throw_stmt_node, verify_eh_throw_table_statements): Kill.
* except.h (verify_eh_throw_table_statements): Kill prototype.
* cfgexpand.c (expand_gimple_basic_block): Propagate Eh regions
into call exrepssions.
* tree-optimize.c (execute_free_cfg_annotatiosn): Do not call
eh trhow verifier.
* tree-cfg.c: Include pointer-set.h.
(verify_node_sharing): Work on pointer set.
(verify_eh_throw_stmt_node): New.
(verify_stmts): Use pointers sets, verify throw_stmt.
From-SVN: r120766
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r-- | gcc/cfgexpand.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index b8d44a6..b91af8e 100644 --- a/gcc/cfgexpand.c +++ b/gcc/cfgexpand.c @@ -1512,6 +1512,13 @@ expand_gimple_basic_block (basic_block bb) else { tree call = get_call_expr_in (stmt); + int region; + /* For the benefit of calls.c, converting all this to rtl, + we need to record the call expression, not just the outer + modify statement. */ + if (call && call != stmt + && (region = lookup_stmt_eh_region (stmt)) > 0) + add_stmt_to_eh_region (call, region); if (call && CALL_EXPR_TAILCALL (call)) { bool can_fallthru; |