This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, rs6000] Don't use __vector __m64 for compatibility reasons
- From: Segher Boessenkool <segher at kernel dot crashing dot org>
- To: Bill Schmidt <wschmidt at linux dot ibm dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Sat, 20 Oct 2018 10:42:18 -0500
- Subject: Re: [PATCH, rs6000] Don't use __vector __m64 for compatibility reasons
- References: <4c1cc0c7-7584-0b50-0145-e9d4e0b14807@linux.ibm.com>
Hi Bill,
On Fri, Oct 19, 2018 at 04:22:56PM -0500, Bill Schmidt wrote:
> For historical reasons, there are different interpretations of whether a
> type "__vector <type>" is allowed when <type> is a typedef. For maximum
> compatibility between compilers, this patch removes some such cases from
> the x86 intrinsic compatibility headers.
>
> Bootstrapped and tested on powerpc64le-linux-gnu with no regressions.
> Is this okay for trunk?
Sure, this is implementation only, that is just fine in either case.
Thanks for handling this!
Segher
> 2018-10-19 Bill Schmidt <wschmidt@linux.ibm.com>
> Jinsong Ji <jji@us.ibm.com>
>
> * config/rs6000/emmintrin.h (_mm_movemask_pd): Replace __vector
> __m64 with __vector unsigned long long for compatibility.
> (_mm_movemask_epi8): Likewise.
> * config/rs6000/xmmintrin.h (_mm_cvtps_pi32): Likewise.
> (_mm_cvttps_pi32): Likewise.
> (_mm_cvtpi32_ps): Likewise.
> (_mm_cvtps_pi16): Likewise.
> (_mm_loadh_pi): Likewise.
> (_mm_storeh_pi): Likewise.
> (_mm_movehl_ps): Likewise.
> (_mm_movelh_ps): Likewise.
> (_mm_loadl_pi): Likewise.
> (_mm_storel_pi): Likewise.
> (_mm_movemask_ps): Likewise.
> (_mm_shuffle_pi16): Likewise.