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: [Scalar masks 2/x] Use bool masks in if-conversion


On 08/17/2015 10:25 AM, Ilya Enkovich wrote:
Hi,

This patch intoriduces a new vectorizer hook use_scalar_mask_p which affects code generated by if-conversion pass (and affects patterns in later patches).

Thanks,
Ilya
--
2015-08-17  Ilya Enkovich  <enkovich.gnu@gmail.com>

	* doc/tm.texi (TARGET_VECTORIZE_USE_SCALAR_MASK_P): New.
	* doc/tm.texi.in: Regenerated.
	* target.def (use_scalar_mask_p): New.
	* tree-if-conv.c: Include target.h.
	(predicate_mem_writes): Don't convert boolean predicates into
	integer when scalar masks are used.
Presumably this is how you prevent the generation of scalar masks rather than boolean masks on targets which don't have the former?

I hate to ask, but how painful would it be to go from a boolean to integer masks later such as during expansion? Or vice-versa.

WIthout a deep knowledge of the entire patchkit, it feels like we're introducing target stuff in a place where we don't want it and that we'd be better served with a canonical representation through gimple, then dropping into something more target specific during gimple->rtl expansion.


Jeff


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