Commit 8cafacb5 by Carl Love Committed by Carl Love

emmintrin.h: Add _MM_SHUFFLE2.

gcc/ChangeLog:

2018-09-14  Carl Love  <cel@us.ibm.com>

	* config/rs6000/emmintrin.h: Add _MM_SHUFFLE2.
	* config/rs6000/xmmintrin.h: Add _MM_SHUFFLE.

From-SVN: r264317
parent dc928512
2018-09-14 Carl Love <cel@us.ibm.com>
* config/rs6000/emmintrin.h: Add _MM_SHUFFLE2.
* config/rs6000/xmmintrin.h: Add _MM_SHUFFLE.
2018-09-14 Segher Boessenkool <segher@kernel.crashing.org> 2018-09-14 Segher Boessenkool <segher@kernel.crashing.org>
PR target/87224 PR target/87224
......
...@@ -85,6 +85,9 @@ typedef double __m128d __attribute__ ((__vector_size__ (16), __may_alias__)); ...@@ -85,6 +85,9 @@ typedef double __m128d __attribute__ ((__vector_size__ (16), __may_alias__));
typedef long long __m128i_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1))); typedef long long __m128i_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1)));
typedef double __m128d_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1))); typedef double __m128d_u __attribute__ ((__vector_size__ (16), __may_alias__, __aligned__ (1)));
/* Define two value permute mask */
#define _MM_SHUFFLE2(x,y) (((x) << 1) | (y))
/* Create a vector with element 0 as F and the rest zero. */ /* Create a vector with element 0 as F and the rest zero. */
extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__)) extern __inline __m128d __attribute__((__gnu_inline__, __always_inline__, __artificial__))
_mm_set_sd (double __F) _mm_set_sd (double __F)
......
...@@ -57,6 +57,9 @@ ...@@ -57,6 +57,9 @@
#ifndef _XMMINTRIN_H_INCLUDED #ifndef _XMMINTRIN_H_INCLUDED
#define _XMMINTRIN_H_INCLUDED #define _XMMINTRIN_H_INCLUDED
/* Define four value permute mask */
#define _MM_SHUFFLE(w,x,y,z) (((w) << 6) | ((x) << 4) | ((y) << 2) | (z))
#include <altivec.h> #include <altivec.h>
/* Avoid collisions between altivec.h and strict adherence to C++ and /* Avoid collisions between altivec.h and strict adherence to C++ and
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment