A recent patch inadvertently added the use of "vector" to mmintrin.h when all such uses should be "__vector".
Committed as obvious/trivial. [gcc] 2018-12-07 Paul A. Clarke <p...@us.ibm.com> PR target/88408 * config/rs6000/mmintrin.h (_mm_packs_pu16): Correctly use "__vector". Index: gcc/config/rs6000/mmintrin.h =================================================================== --- gcc/config/rs6000/mmintrin.h (revision 266871) +++ gcc/config/rs6000/mmintrin.h (working copy) @@ -228,9 +228,9 @@ _mm_packs_pu16 (__m64 __m1, __m64 __m2) #endif const __vector signed short __zero = { 0 }; __vector __bool short __select = vec_cmplt (vm1, __zero); - r = vec_packs ((vector unsigned short) vm1, (vector unsigned short) vm1); + r = vec_packs ((__vector unsigned short) vm1, (__vector unsigned short) vm1); __vector __bool char packsel = vec_pack (__select, __select); - r = vec_sel (r, (const vector unsigned char) __zero, packsel); + r = vec_sel (r, (const __vector unsigned char) __zero, packsel); return (__m64) ((__vector long long) r)[0]; }