https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122577
--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <[email protected]>: https://gcc.gnu.org/g:bc10ba9c33bb0cef335e8e0072e638fd4d404337 commit r16-5080-gbc10ba9c33bb0cef335e8e0072e638fd4d404337 Author: Richard Biener <[email protected]> Date: Thu Nov 6 14:24:34 2025 +0100 tree-optimization/122577 - missed vectorization of conversion from bool We are currently overly restrictive with rejecting conversions from bit-precision entities to mode precision ones. Similar to RTL expansion we can focus on non-bit operations producing bit-precision results which we currently do not properly handle by masking. Such checks should be already present. The following relaxes vectorizable_conversion. Actual bitfield accesses are catched and rejected by vectorizer dataref analysis and converted during if-conversion into mode-size accesses with appropriate sign- or zero-extension. PR tree-optimization/122577 * tree-vect-stmts.cc (vectorizable_conversion): Allow conversions from non-mode-precision types. * gcc.dg/vect/vect-bool-3.c: New testcase.
