diff options
author | Jan Hubicka <jh@suse.cz> | 2010-06-01 13:59:18 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2010-06-01 11:59:18 +0000 |
commit | f7fbb475ad5956e382f39c3b0f0f75aa57a4237e (patch) | |
tree | 27232a137ae3c55a60e650b4589a1b7e95e3e331 /gcc | |
parent | 1322b0503c36c61f8efefdc5c2fc9db4185fbdb5 (diff) | |
download | gcc-f7fbb475ad5956e382f39c3b0f0f75aa57a4237e.zip gcc-f7fbb475ad5956e382f39c3b0f0f75aa57a4237e.tar.gz gcc-f7fbb475ad5956e382f39c3b0f0f75aa57a4237e.tar.bz2 |
tree-cfg.c (verify_stmt): Do not skip could_throw test.
* tree-cfg.c (verify_stmt): Do not skip could_throw test.
* passes.c (execute_function_todo): Do not make implicit verify_ssa.
(execute_all_ipa_transforms): Do not play with the states.
From-SVN: r160098
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/passes.c | 12 | ||||
-rw-r--r-- | gcc/tree-cfg.c | 10 |
3 files changed, 8 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6660479..6f92cde 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-06-01 Jan Hubicka <jh@suse.cz> + + * tree-cfg.c (verify_stmt): Do not skip could_throw test. + * passes.c (execute_function_todo): Do not make implicit verify_ssa. + (execute_all_ipa_transforms): Do not play with the states. + 2010-06-01 Maxim Kuvyrkov <maxim@codesourcery.com> * config/arm/t-linux-androideabi: New. diff --git a/gcc/passes.c b/gcc/passes.c index 64555fd..fe00519 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -1171,8 +1171,6 @@ static void execute_function_todo (void *data) { unsigned int flags = (size_t)data; - if (cfun->curr_properties & PROP_ssa) - flags |= TODO_verify_ssa; flags &= ~cfun->last_verified; if (!flags) return; @@ -1495,20 +1493,11 @@ execute_one_ipa_transform_pass (struct cgraph_node *node, void execute_all_ipa_transforms (void) { - enum cgraph_state old_state = cgraph_state; struct cgraph_node *node; if (!cfun) return; node = cgraph_node (current_function_decl); - /* Statement verification skip verification of nothorw when - state is IPA_SSA because we do not modify function bodies - after setting the flag on function. Instead we leave it - to fixup_cfg to do such a transformation. We need to temporarily - change the cgraph state so statement verifier before - transform do not fire. */ - cgraph_state = CGRAPH_STATE_IPA_SSA; - if (node->ipa_transforms_to_apply) { unsigned int i; @@ -1522,7 +1511,6 @@ execute_all_ipa_transforms (void) VEC_free (ipa_opt_pass, heap, node->ipa_transforms_to_apply); node->ipa_transforms_to_apply = NULL; } - cgraph_state = old_state; } /* Execute PASS. */ diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 5d094b5..a76a254 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -4003,14 +4003,8 @@ verify_stmt (gimple_stmt_iterator *gsi) { if (!stmt_could_throw_p (stmt)) { - /* During IPA passes, ipa-pure-const sets nothrow flags on calls - and they are updated on statements only after fixup_cfg - is executed at beggining of expansion stage. */ - if (cgraph_state != CGRAPH_STATE_IPA_SSA) - { - error ("statement marked for throw, but doesn%'t"); - goto fail; - } + error ("statement marked for throw, but doesn%'t"); + goto fail; } else if (lp_nr > 0 && !last_in_block && stmt_can_throw_internal (stmt)) { |