re PR tree-optimization/68707 (testcase gcc.dg/vect/O3-pr36098.c vectorized using VEC_PERM_EXPR rather than VEC_LOAD_LANES)
2015-12-10 Richard Biener <rguenther@suse.de> PR tree-optimization/68707 PR tree-optimization/67323 * tree-vect-slp.c (vect_analyze_slp_instance): Drop SLP instances if they can be vectorized using load/store-lane instructions. From-SVN: r231620
This commit is contained in:
parent
603cca9344
commit
150cf34781
2 changed files with 8 additions and 27 deletions
|
@ -1,3 +1,11 @@
|
|||
2015-12-14 Richard Biener <rguenther@suse.de>
|
||||
|
||||
Revert accidentially applied
|
||||
PR tree-optimization/68707
|
||||
PR tree-optimization/67323
|
||||
* tree-vect-slp.c (vect_analyze_slp_instance): Drop SLP instances
|
||||
if they can be vectorized using load/store-lane instructions.
|
||||
|
||||
2015-12-14 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/68852
|
||||
|
|
|
@ -1808,33 +1808,6 @@ vect_analyze_slp_instance (vec_info *vinfo,
|
|||
}
|
||||
}
|
||||
|
||||
/* If the loads and stores can be handled with load/store-lane
|
||||
instructions do not generate this SLP instance. */
|
||||
if (is_a <loop_vec_info> (vinfo)
|
||||
&& loads_permuted
|
||||
&& dr && vect_store_lanes_supported (vectype, group_size))
|
||||
{
|
||||
slp_tree load_node;
|
||||
FOR_EACH_VEC_ELT (loads, i, load_node)
|
||||
{
|
||||
gimple *first_stmt = GROUP_FIRST_ELEMENT
|
||||
(vinfo_for_stmt (SLP_TREE_SCALAR_STMTS (load_node)[0]));
|
||||
stmt_vec_info stmt_vinfo = vinfo_for_stmt (first_stmt);
|
||||
if (! vect_load_lanes_supported (STMT_VINFO_VECTYPE (stmt_vinfo),
|
||||
GROUP_SIZE (stmt_vinfo)))
|
||||
break;
|
||||
}
|
||||
if (i == loads.length ())
|
||||
{
|
||||
if (dump_enabled_p ())
|
||||
dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
|
||||
"Built SLP cancelled: can use "
|
||||
"load/store-lanes\n");
|
||||
vect_free_slp_instance (new_instance);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
vinfo->slp_instances.safe_push (new_instance);
|
||||
|
||||
if (dump_enabled_p ())
|
||||
|
|
Loading…
Add table
Reference in a new issue