aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vect-patterns.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2012-06-15 13:08:28 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2012-06-15 13:08:28 +0200
commit772e61e10e7bef509904262112e0781e557f0934 (patch)
treed74df4cc665356a1080e7a6efbfe95ab5eae7f38 /gcc/tree-vect-patterns.c
parent079c527f5e7593f8563e3415ad04cf1f0e5d9269 (diff)
downloadgcc-772e61e10e7bef509904262112e0781e557f0934.zip
gcc-772e61e10e7bef509904262112e0781e557f0934.tar.gz
gcc-772e61e10e7bef509904262112e0781e557f0934.tar.bz2
tree-vect-patterns.c (vect_pattern_recog): Don't unnecessarily allocate and free bbs array for the SLP case.
* tree-vect-patterns.c (vect_pattern_recog): Don't unnecessarily allocate and free bbs array for the SLP case. From-SVN: r188657
Diffstat (limited to 'gcc/tree-vect-patterns.c')
-rw-r--r--gcc/tree-vect-patterns.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c
index aeb7eb2..4138d41 100644
--- a/gcc/tree-vect-patterns.c
+++ b/gcc/tree-vect-patterns.c
@@ -2983,7 +2983,7 @@ void
vect_pattern_recog (loop_vec_info loop_vinfo, bb_vec_info bb_vinfo)
{
struct loop *loop;
- basic_block *bbs, bb;
+ basic_block *bbs;
unsigned int nbbs;
gimple_stmt_iterator si;
unsigned int i, j;
@@ -3002,10 +3002,8 @@ vect_pattern_recog (loop_vec_info loop_vinfo, bb_vec_info bb_vinfo)
}
else
{
- bb = BB_VINFO_BB (bb_vinfo);
+ bbs = &BB_VINFO_BB (bb_vinfo);
nbbs = 1;
- bbs = XNEW (basic_block);
- bbs[0] = bb;
}
/* Scan through the loop stmts, applying the pattern recognition
@@ -3031,6 +3029,4 @@ vect_pattern_recog (loop_vec_info loop_vinfo, bb_vec_info bb_vinfo)
}
VEC_free (gimple, heap, stmts_to_replace);
- if (bb_vinfo)
- free (bbs);
}