diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-01 06:56:18 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-07-01 06:56:18 +0000 |
commit | 22be5c8576575184af4e24f92083d85ec7fba56f (patch) | |
tree | a869fea6b0c9c455ef294799ca412c88df3bfb34 /gcc/tree-vect-stmts.c | |
parent | 25a84fe95a70158d0e00e0eb5be025d6612174bf (diff) | |
download | gcc-22be5c8576575184af4e24f92083d85ec7fba56f.tar.gz |
2011-07-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49603
* tree-vect-stmts.c (vectorizable_load): Remove unnecessary
assert.
* gcc.dg/torture/pr49603.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@175746 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r-- | gcc/tree-vect-stmts.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 0d7d3dbe41d..9a384c5cfa3 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -4574,19 +4574,14 @@ vectorizable_load (gimple stmt, gimple_stmt_iterator *gsi, gimple *vec_stmt, /* 4. Handle invariant-load. */ if (inv_p && !bb_vinfo) { + tree vec_inv; + gimple_stmt_iterator gsi2 = *gsi; gcc_assert (!strided_load); - if (j == 0) - { - tree vec_inv; - gimple_stmt_iterator gsi2 = *gsi; - gsi_next (&gsi2); - vec_inv = build_vector_from_val (vectype, scalar_dest); - new_temp = vect_init_vector (stmt, vec_inv, - vectype, &gsi2); - new_stmt = SSA_NAME_DEF_STMT (new_temp); - } - else - gcc_unreachable (); /* FORNOW. */ + gsi_next (&gsi2); + vec_inv = build_vector_from_val (vectype, scalar_dest); + new_temp = vect_init_vector (stmt, vec_inv, + vectype, &gsi2); + new_stmt = SSA_NAME_DEF_STMT (new_temp); } if (negative) |