vect: Cost intermediate conversions
g:6f19cf7526168f8 extended N-vector to N-vector conversions to handle cases where an intermediate integer extension or truncation is needed. This patch adjusts the cost to account for these intermediate conversions. gcc/ * tree-vect-stmts.cc (vectorizable_conversion): Take multi_step_cvt into account when costing non-widening/truncating conversions.
This commit is contained in:
parent
53d6f57c1b
commit
9302b0743b
1 changed files with 3 additions and 2 deletions
|
@ -5478,8 +5478,9 @@ vectorizable_conversion (vec_info *vinfo,
|
|||
if (modifier == NONE)
|
||||
{
|
||||
STMT_VINFO_TYPE (stmt_info) = type_conversion_vec_info_type;
|
||||
vect_model_simple_cost (vinfo, stmt_info, ncopies, dt, ndts, slp_node,
|
||||
cost_vec);
|
||||
vect_model_simple_cost (vinfo, stmt_info,
|
||||
ncopies * (1 + multi_step_cvt),
|
||||
dt, ndts, slp_node, cost_vec);
|
||||
}
|
||||
else if (modifier == NARROW_SRC || modifier == NARROW_DST)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue