re PR tree-optimization/45470 (ICE: verify_flow_info failed: BB 2 can not throw but...
authorEric Botcazou <ebotcazou@adacore.com>
Fri, 25 Feb 2011 11:18:14 +0000 (11:18 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Fri, 25 Feb 2011 11:18:14 +0000 (11:18 +0000)
PR tree-optimization/45470
* tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
can throw internally only.
* tree-vect-stmts.c (vectorizable_call): Likewise.

From-SVN: r170492

gcc/ChangeLog
gcc/tree-vect-data-refs.c
gcc/tree-vect-stmts.c

index 000c08f4d75ef98d0ba15f11d23997193774309b..030167f9bcde3126f35fa9031b4bfb32f68506d8 100644 (file)
@@ -1,3 +1,10 @@
+2011-02-25  Eric Botcazou  <ebotcazou@adacore.com>
+
+       PR tree-optimization/45470
+       * tree-vect-data-refs.c (vect_analyze_data_refs): Fail if a statement
+       can throw internally only.
+       * tree-vect-stmts.c (vectorizable_call): Likewise.
+
 2011-02-24  Anatoly Sokolov  <aesok@post.ru>
 
        * config/stormy16/stormy16.h (PREFERRED_RELOAD_CLASS,
index 1ec59efaac6074ae9bedad9e56f71160f3f63933..2c9936cdbeb07a6c0de5375ec745cef788a5b44a 100644 (file)
@@ -2578,7 +2578,7 @@ vect_analyze_data_refs (loop_vec_info loop_vinfo,
       offset = unshare_expr (DR_OFFSET (dr));
       init = unshare_expr (DR_INIT (dr));
 
-      if (stmt_could_throw_p (stmt))
+      if (stmt_can_throw_internal (stmt))
         {
           if (vect_print_dump_info (REPORT_UNVECTORIZED_LOCATIONS))
             {
index e5bfcbe81acb2b9350fa5524bcbeb59a2ddad6dd..b3479252886c0b320a7a8689078be48d5f7f2bea 100644 (file)
@@ -1345,7 +1345,7 @@ vectorizable_call (gimple stmt, gimple_stmt_iterator *gsi, gimple *vec_stmt)
   if (TREE_CODE (gimple_call_lhs (stmt)) != SSA_NAME)
     return false;
 
-  if (stmt_could_throw_p (stmt))
+  if (stmt_can_throw_internal (stmt))
     return false;
 
   vectype_out = STMT_VINFO_VECTYPE (stmt_info);