From: Richard Biener Date: Tue, 12 Jan 2016 11:39:54 +0000 (+0000) Subject: re PR testsuite/69007 (test cases gcc.dg/vect/vect-reduc-dot-s8a.c fails starting... X-Git-Tag: basepoints/gcc-7~1704 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5b723b6806dc86853fff5a1b30b9c505f870e800;p=thirdparty%2Fgcc.git re PR testsuite/69007 (test cases gcc.dg/vect/vect-reduc-dot-s8a.c fails starting with r231815) 2016-01-12 Richard Biener PR tree-optimization/69007 * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Move widen_sum after dot_prod and sad. From-SVN: r232262 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 96a63869a0ae..708fab405e57 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-01-12 Richard Biener + + PR tree-optimization/69007 + * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Move + widen_sum after dot_prod and sad. + 2016-01-12 Richard Biener PR tree-optimization/69168 diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c index 51d3e068dc7a..712b34c39c3d 100644 --- a/gcc/tree-vect-patterns.c +++ b/gcc/tree-vect-patterns.c @@ -75,11 +75,15 @@ struct vect_recog_func vect_recog_func_ptr fn; const char *name; }; + +/* Note that ordering matters - the first pattern matching on a stmt + is taken which means usually the more complex one needs to preceed + the less comples onex (widen_sum only after dot_prod or sad for example). */ static vect_recog_func vect_vect_recog_func_ptrs[NUM_PATTERNS] = { { vect_recog_widen_mult_pattern, "widen_mult" }, - { vect_recog_widen_sum_pattern, "widen_sum" }, { vect_recog_dot_prod_pattern, "dot_prod" }, { vect_recog_sad_pattern, "sad" }, + { vect_recog_widen_sum_pattern, "widen_sum" }, { vect_recog_pow_pattern, "pow" }, { vect_recog_widen_shift_pattern, "widen_shift" }, { vect_recog_over_widening_pattern, "over_widening" },