Commit 71c3949e by Bill Schmidt Committed by William Schmidt

emmintrin.h (_mm_sll_epi64): Remove wrong cast.

2018-10-25  Bill Schmidt  <wschmidt@linux.ibm.com>
	    Jinsong Ji <jji@us.ibm.com>

	* config/rs6000/emmintrin.h (_mm_sll_epi64): Remove wrong cast.
	* config/rs6000/xmmintrin.h (_mm_min_ps): Change m's type to
	__vector __bool int.  Use vec_cmpgt in preference to deprecated
	function vec_vcmpgtfp.
	(_mm_max_ps): Likewise.


Co-Authored-By: Jinsong Ji <jji@us.ibm.com>

From-SVN: r265506
parent 7959b94e
2018-10-25 Bill Schmidt <wschmidt@linux.ibm.com>
Jinsong Ji <jji@us.ibm.com>
* config/rs6000/emmintrin.h (_mm_sll_epi64): Remove wrong cast.
* config/rs6000/xmmintrin.h (_mm_min_ps): Change m's type to
__vector __bool int. Use vec_cmpgt in preference to deprecated
function vec_vcmpgtfp.
(_mm_max_ps): Likewise.
2018-10-25 Jeff Law <law@redhat.com> 2018-10-25 Jeff Law <law@redhat.com>
* config/rl78/rl78.c (insn_ok_now): Always re-recognize the insn * config/rl78/rl78.c (insn_ok_now): Always re-recognize the insn
...@@ -59,6 +68,17 @@ ...@@ -59,6 +68,17 @@
* options.texi (Deprecated): Move list to Var section. * options.texi (Deprecated): Move list to Var section.
2018-10-24 Bill Schmidt <wschmidt@linux.ibm.com>
Jinsong Ji <jji@us.ibm.com>
* config/rs6000/emmintrin.h (_mm_cvtpd_epi32): Change deprecated
__vector long to __vector long long.
(_mm_cvtpd_ps): Likewise.
(_mm_cvttpd_epi32): Likewise.
(_mm_cvtpi32_pd): Likewise.
(_mm_unpackhi_epi64): Likewise.
(_mm_unpacklo_epi64): Likewise.
2018-10-24 Segher Boessenkool <segher@kernel.crashing.org> 2018-10-24 Segher Boessenkool <segher@kernel.crashing.org>
PR rtl-optimization/87720 PR rtl-optimization/87720
...@@ -217,6 +237,15 @@ ...@@ -217,6 +237,15 @@
* tree-ssa-threadedge.c (thread_around_empty_blocks): Handle * tree-ssa-threadedge.c (thread_around_empty_blocks): Handle
the case we do not find the taken edge. the case we do not find the taken edge.
2018-10-22 Bill Schmidt <wschmidt@linux.ibm.com>
Jinsong Ji <jji@us.ibm.com>
* config/rs6000/emmintrin.h (_MM_SHUFFLE2): Comment cleanup.
(_mm_store_pd): Use unaligned vector type for pointer cast.
(_mm_maskmoveu_si128): Likewise.
* config/rs6000/xmmintrin.h (__m128_u): New typedef.
(_mm_store_ps): Use unaligned vector type for pointer cast.
2018-10-22 Paul Koning <ni1d@arrl.net> 2018-10-22 Paul Koning <ni1d@arrl.net>
* symtab.c (symtab_node::increase_alignment): Correct max * symtab.c (symtab_node::increase_alignment): Correct max
...@@ -468,6 +497,25 @@ ...@@ -468,6 +497,25 @@
(*sub<mode>3<mask_name>_bcst): New. (*sub<mode>3<mask_name>_bcst): New.
(*add<mode>3<mask_name>_bcst): Likewise. (*add<mode>3<mask_name>_bcst): Likewise.
2018-10-21 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.
2018-10-21 H.J. Lu <hongjiu.lu@intel.com> 2018-10-21 H.J. Lu <hongjiu.lu@intel.com>
PR target/72782 PR target/72782
...@@ -1770,8 +1770,7 @@ _mm_sll_epi64 (__m128i __A, __m128i __B) ...@@ -1770,8 +1770,7 @@ _mm_sll_epi64 (__m128i __A, __m128i __B)
lshift = (__v2du) vec_splat ((__v2du)__B, 0); lshift = (__v2du) vec_splat ((__v2du)__B, 0);
shmask = lshift < shmax; shmask = lshift < shmax;
result = vec_vsld ((__v2du) __A, lshift); result = vec_vsld ((__v2du) __A, lshift);
result = (__v2du) vec_sel ((__v2df) shmask, (__v2df) result, result = (__v2du) vec_sel ((__v2df) shmask, (__v2df) result, shmask);
(__v2df) shmask);
return (__m128i) result; return (__m128i) result;
} }
......
...@@ -457,14 +457,14 @@ _mm_max_ss (__m128 __A, __m128 __B) ...@@ -457,14 +457,14 @@ _mm_max_ss (__m128 __A, __m128 __B)
extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
_mm_min_ps (__m128 __A, __m128 __B) _mm_min_ps (__m128 __A, __m128 __B)
{ {
__m128 m = (__m128) vec_vcmpgtfp ((__v4sf) __B, (__v4sf) __A); __vector __bool int m = vec_cmpgt ((__v4sf) __B, (__v4sf) __A);
return vec_sel (__B, __A, m); return vec_sel (__B, __A, m);
} }
extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__)) extern __inline __m128 __attribute__((__gnu_inline__, __always_inline__, __artificial__))
_mm_max_ps (__m128 __A, __m128 __B) _mm_max_ps (__m128 __A, __m128 __B)
{ {
__m128 m = (__m128) vec_vcmpgtfp ((__v4sf) __A, (__v4sf) __B); __vector __bool int m = vec_cmpgt ((__v4sf) __A, (__v4sf) __B);
return vec_sel (__B, __A, m); return vec_sel (__B, __A, m);
} }
......
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