diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2011-02-25 11:18:14 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2011-02-25 11:18:14 +0000 |
commit | 822ba6d74fae9b7ec37971d69026c457a0293e31 (patch) | |
tree | 68df283b6fe0235c96f58e965ca1f423941e8ddd /gcc | |
parent | 79a0b1460c85e284fed830b770109c2dbad2a279 (diff) | |
download | gcc-822ba6d74fae9b7ec37971d69026c457a0293e31.zip gcc-822ba6d74fae9b7ec37971d69026c457a0293e31.tar.gz gcc-822ba6d74fae9b7ec37971d69026c457a0293e31.tar.bz2 |
re PR tree-optimization/45470 (ICE: verify_flow_info failed: BB 2 can not throw but has an EH edge with -ftree-vectorize -fnon-call-exceptions)
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/tree-vect-data-refs.c | 2 | ||||
-rw-r--r-- | gcc/tree-vect-stmts.c | 2 |
3 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 000c08f..030167f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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, diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c index 1ec59ef..2c9936c 100644 --- a/gcc/tree-vect-data-refs.c +++ b/gcc/tree-vect-data-refs.c @@ -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)) { diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index e5bfcbe..b347925 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -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); |