https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110182

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[11/12/13/14 Regression]    |[11/12 Regression]
                   |Vector(2) cast from double  |Vector(2) cast from double
                   |to float and back and       |to float and back and
                   |subtraction seems to        |subtraction seems to
                   |produce incorrect results   |produce incorrect results
      Known to work|                            |13.1.1, 14.0
      Known to fail|                            |13.1.0

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed on trunk and GCC 13 branch sofar.  Not my day writing commit logs though
...

commit b6118b8155a679ced926e8ff900e0ed969cd23a7 (HEAD -> gcc-13,
origin/releases/gcc-13)
Author: Richard Biener <rguent...@suse.de>
Date:   Fri Jun 9 09:29:09 2023 +0200

    middle-end/110182 - TYPE_PRECISION on VECTOR_TYPE causes wrong-code

    When folding two conversions in a row we use TYPE_PRECISION but
    that's invalid for VECTOR_TYPE.  The following fixes this by
    using element_precision instead.

            middle-end/110182
            * match.pd (two conversions in a row): Use element_precision
            to DTRT for VECTOR_TYPE.

    (cherry picked from commit 3e12669a0eb968cfcbe9242b382fd8020935edf8)

Reply via email to