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

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:c63f091db89a56ae56b2bfa2ba4d9e956bd9693f

commit r11-6879-gc63f091db89a56ae56b2bfa2ba4d9e956bd9693f
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Sat Jan 23 09:41:58 2021 +0100

    rs6000: Fix up __m64 typedef in mmintrin.h [PR97301]

    The x86 __m64 type is defined as:
    /* The Intel API is flexible enough that we must allow aliasing with other
       vector types, and their scalar components.  */
    typedef int __m64 __attribute__ ((__vector_size__ (8), __may_alias__));
    and so matches the comment above it in that reads and stores through
    pointers to __m64 can alias anything.
    But in the rs6000 headers that is the case only for __m128, but not __m64.

    The following patch adds that attribute, which fixes the
    FAIL: gcc.target/powerpc/sse-movhps-1.c execution test
    FAIL: gcc.target/powerpc/sse-movlps-1.c execution test
    regressions that appeared when Honza improved ipa-modref.

    2021-01-23  Jakub Jelinek  <ja...@redhat.com>

            PR testsuite/97301
            * config/rs6000/mmintrin.h (__m64): Add __may_alias__ attribute.

Reply via email to