This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 14/25] Disable inefficient vectorization of elementwise loads/stores.


On 17/09/18 12:43, Richard Sandiford wrote:
OK, sounds like the cost of vec_construct is too low then.  But looking
at the port, I see you have:

/* Implement TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST.  */

int
gcn_vectorization_cost (enum vect_cost_for_stmt ARG_UNUSED (type_of_cost),
			tree ARG_UNUSED (vectype), int ARG_UNUSED (misalign))
{
   /* Always vectorize.  */
   return 1;
}

which short-circuits the cost-model altogether.  Isn't that part
of the problem?

Well, it's possible that that's a little simplistic. ;-)

Although, actually the elementwise issue predates the existence of gcn_vectorization_cost, and the default does appear to penalize vec_construct somewhat.

Actually, the default definition doesn't seem to do much besides increase vec_construct, so I'm not sure now why I needed to change it? Hmm, more experiments to do.

Thanks for the pointer.

Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]