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.

Reply via email to