From: hubicka Date: Tue, 1 Jun 2010 11:59:18 +0000 (+0000) Subject: * tree-cfg.c (verify_stmt): Do not skip could_throw test. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=90b41bfa1b2a6e36eba791299cdd2a9d44d27a55;p=thirdparty%2Fgcc.git * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160098 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6660479a9842..6f92cdec063b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-06-01 Jan Hubicka + + * 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 * config/arm/t-linux-androideabi: New. diff --git a/gcc/passes.c b/gcc/passes.c index 64555fdc8266..fe005199d8c7 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 5d094b5bbaef..a76a254cbd20 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)) {