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] |
On 08/17/2015 10:25 AM, Ilya Enkovich wrote:
Presumably this is how you prevent the generation of scalar masks rather than boolean masks on targets which don't have the former?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.
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] |