https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114166
Bug ID: 114166 Summary: word_mode vectorization still relies on vector lowering Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: rguenth at gcc dot gnu.org Target Milestone: --- When the vectorizer decides to use emulated vectors for operations the target doesn't support and the vector types do not have integer mode but the vectorizer simply emits vector code nevertheless which it does for bitwise operations, we fail RTL expansion. This can be seen with g++.dg/opt/pr82929.C when moving vector lowering before vectorization. We then vectorize V1SImode bitwise and even though the optab check discovered that's not supported. Vectorizer code generation should, like it now does for PLUS/MINUS and NEGATE, use integer types when code generating emulated vectors.