diff options
Diffstat (limited to 'gcc/tree-vect-stmts.c')
-rw-r--r-- | gcc/tree-vect-stmts.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index d3fa516..7e5fe4c 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -95,6 +95,12 @@ record_stmt_cost (stmt_vector_for_cost *body_cost_vec, int count, enum vect_cost_for_stmt kind, stmt_vec_info stmt_info, int misalign, enum vect_cost_model_location where) { + if ((kind == vector_load || kind == unaligned_load) + && STMT_VINFO_GATHER_SCATTER_P (stmt_info)) + kind = vector_gather_load; + if ((kind == vector_store || kind == unaligned_store) + && STMT_VINFO_GATHER_SCATTER_P (stmt_info)) + kind = vector_scatter_store; if (body_cost_vec) { tree vectype = stmt_info ? stmt_vectype (stmt_info) : NULL_TREE; |