]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* tree-cfg.c (verify_stmt): Do not skip could_throw test.
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Jun 2010 11:59:18 +0000 (11:59 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 1 Jun 2010 11:59:18 +0000 (11:59 +0000)
* 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

gcc/ChangeLog
gcc/passes.c
gcc/tree-cfg.c

index 6660479a9842cc4d9c3608b786f337a2f7d27d34..6f92cdec063b784d0b28bc3c7ee31562be8db502 100644 (file)
@@ -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.
index 64555fdc8266e1b3a45b7d1be928f03be73cb56b..fe005199d8c7440675d1cb6e03f3c58c41ce38a7 100644 (file)
@@ -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. */
index 5d094b5bbaef4b9e5613cdb90ea684130c9c2d83..a76a254cbd203e048d01d26b7cec843bc85c366e 100644 (file)
@@ -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))
        {