https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98254
--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Jakub Jelinek from comment #6) > V > qux (short *b) > { > W a = *(W *)b; > return __builtin_convertvector (a, V); > } This was fixed on the trunk with r15-1677-gc320a7efcd35ba (and maybe some follow up patches to the x86 backend).