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] Support vectorizing SLP with mixed plus/minus


Richard Biener <rguenther@suse.de> writes:

> 	PR tree-optimization/37021
> 	* tree-vectorizer.h (struct _slp_tree): Add two_operators flag.
> 	(SLP_TREE_TWO_OPERATORS): New define.
> 	* tree-vect-slp.c (vect_create_new_slp_node): Initialize
> 	SLP_TREE_TWO_OPERATORS.
> 	(vect_build_slp_tree_1): Allow two mixing plus/minus in an
> 	SLP node.
> 	(vect_build_slp_tree): Adjust.
> 	(vect_analyze_slp_cost_1): Likewise.
> 	(vect_schedule_slp_instance): Vectorize mixing plus/minus by
> 	emitting two vector stmts and mixing the results.

FAIL: gcc.dg/vect/vect-strided-a-mult.c execution test

on both aarch64 and ia64.

Andreas.

-- 
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."


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