diff options
author | Ian Lance Taylor <iant@golang.org> | 2023-06-21 11:04:04 -0700 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2023-06-21 11:04:04 -0700 |
commit | 97e31a0a2a2d2273687fcdb4e5416aab1a2186e1 (patch) | |
tree | d5c1cae4de436a0fe54a5f0a2a197d309f3d654c /gcc/tree-vectorizer.cc | |
parent | 6612f4f8cb9b0d5af18ec69ad04e56debc3e6ced (diff) | |
parent | 577223aebc7acdd31e62b33c1682fe54a622ae27 (diff) | |
download | gcc-97e31a0a2a2d2273687fcdb4e5416aab1a2186e1.zip gcc-97e31a0a2a2d2273687fcdb4e5416aab1a2186e1.tar.gz gcc-97e31a0a2a2d2273687fcdb4e5416aab1a2186e1.tar.bz2 |
Merge from trunk revision 577223aebc7acdd31e62b33c1682fe54a622ae27.
Diffstat (limited to 'gcc/tree-vectorizer.cc')
-rw-r--r-- | gcc/tree-vectorizer.cc | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/gcc/tree-vectorizer.cc b/gcc/tree-vectorizer.cc index 89cd0b8..a048e9d 100644 --- a/gcc/tree-vectorizer.cc +++ b/gcc/tree-vectorizer.cc @@ -852,7 +852,7 @@ vect_loop_vectorized_call (class loop *loop, gcond **cond) gimple *g; do { - g = last_stmt (bb); + g = *gsi_last_bb (bb); if ((g && gimple_code (g) == GIMPLE_COND) || !single_succ_p (bb)) break; @@ -888,8 +888,6 @@ vect_loop_dist_alias_call (class loop *loop, function *fun) basic_block bb; basic_block entry; class loop *outer, *orig; - gimple_stmt_iterator gsi; - gimple *g; if (loop->orig_loop_num == 0) return NULL; @@ -914,16 +912,15 @@ vect_loop_dist_alias_call (class loop *loop, function *fun) for (; bb != entry && flow_bb_inside_loop_p (outer, bb); bb = get_immediate_dominator (CDI_DOMINATORS, bb)) { - g = last_stmt (bb); - if (g == NULL || gimple_code (g) != GIMPLE_COND) + gimple_stmt_iterator gsi = gsi_last_bb (bb); + if (!safe_is_a <gcond *> (*gsi)) continue; - gsi = gsi_for_stmt (g); gsi_prev (&gsi); if (gsi_end_p (gsi)) continue; - g = gsi_stmt (gsi); + gimple *g = gsi_stmt (gsi); /* The guarding internal function call must have the same distribution alias id. */ if (gimple_call_internal_p (g, IFN_LOOP_DIST_ALIAS) |