https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123897
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- vector(32) signed charD.20 _13; vector(32) signed charD.20 _22; vector(32) signed charD.20 _7; _7 = _13 * _22; _28 = VIEW_CONVERT_EXPR<vector(32) unsigned charD.21>(_7); .. _30 = _28 - _29; But then we do: vector(32) signed charD.20 _25; vector(32) unsigned charD.21 _29; vector(32) unsigned charD.21 _30; _25 = -_29; _30 = .FMA (_13, _22, _25);
