Skip to content
Snippets Groups Projects
Unverified Commit d3e71b99 authored by Xi Ruoyao's avatar Xi Ruoyao
Browse files

vect: Fix STMT_VINFO_DEF_TYPE check for odd/even widen mult [PR116348]


After fixing PR116142 some code started to trigger an ICE with -O3
-march=znver4.  Per Richard Biener who actually made this fix:

"supportable_widening_operation fails at transform time - that's likely
because vectorizable_reduction "puns" defs to internal_def"

so the check should use STMT_VINFO_REDUC_DEF instead of checking if
STMT_VINFO_DEF_TYPE is vect_reduction_def.

gcc/ChangeLog:

	PR tree-optimization/116348
	* tree-vect-stmts.cc (supportable_widening_operation): Use
	STMT_VINFO_REDUC_DEF (x) instead of
	STMT_VINFO_DEF_TYPE (x) == vect_reduction_def.

gcc/testsuite/ChangeLog:

	PR tree-optimization/116348
	* gcc.c-torture/compile/pr116438.c: New test.

Co-authored-by: default avatarRichard Biener <rguenther@suse.de>
parent 3b78aa3e
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment