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

--- Comment #8 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Michael Meissner
<meiss...@gcc.gnu.org>:

https://gcc.gnu.org/g:3bb91d31a272d7fd9f02301df101e3041d5aeb5d

commit r12-9635-g3bb91d31a272d7fd9f02301df101e3041d5aeb5d
Author: Michael Meissner <meiss...@linux.ibm.com>
Date:   Mon May 22 11:08:13 2023 -0400

    Do not generate vmaddfp and vnmsubfp

    This is version 3 of the patch.  This is essentially version 1 with the
removal
    of changes to altivec.md, and cleanup of the comments.

    Version 2 generated the vmaddfp and vnmsubfp instructions if -Ofast was
used,
    and those changes are deleted in this patch.

    The Altivec instructions vmaddfp and vnmsubfp have different rounding
behaviors
    than the VSX xvmaddsp and xvnmsubsp instructions.  In particular,
generating
    these instructions seems to break Eigen on big endian systems.

    I have done bootstrap builds on power9 little endian (with both IEEE long
    double and IBM long double).  I have also done the builds and test on a
power8
    big endian system (testing both 32-bit and 64-bit code generation).  Chip
has
    verified that it fixes the problem that Eigen encountered.  Can I check
this
    into the master GCC branch?  After a burn-in period, can I check this patch
    into the active GCC branches?

    Thanks in advance.

    2023-05-22   Michael Meissner  <meiss...@linux.ibm.com>

    gcc/

            PR target/70243
            * config/rs6000/vsx.md (vsx_fmav4sf4): Do not generate vmaddfp.
            (vsx_nfmsv4sf4): Do not generate vnmsubfp.  Back port from master
            04/10/2023 change.

    gcc/testsuite/

            PR target/70243
            * gcc.target/powerpc/pr70243.c: New test.  Back port from master
            04/10/2023 change.

Reply via email to