https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69007
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Component|target |testsuite Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Mine. Probably the change that would make two patterns at the same stmt unrecognizable and 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" }, which means widen_sum should be only after dot_prod detection. Maybe you can verify if swapping them passes testing on power (until I get to this myself).