Hi, Following the previous one 2/3, this patch is to update the vector conversions between fixed point and floating point with different element unit sizes, such as: SP <-> DI, DP <-> SI. Bootstrap and regression testing just launched. gcc/ChangeLog 2019-10-23 Kewen Lin * config/rs6000/rs6000-modes.def (V2SF, V2SI): New modes. * config/rs6000/vsx.md (UNSPEC_VSX_CVDPSXWS, UNSPEC_VSX_CVSXDSP, UNSPEC_VSX_CVUXDSP, UNSPEC_VSX_CVSPSXDS, UNSPEC_VSX_CVSPUXDS): Remove. (vsx_xvcvspdp): New define_expand, old one split to... (vsx_xvcvspdp_be): ... this. New. And... (vsx_xvcvspdp_le): ... this. New. (vsx_xvcvdpsp): New define_expand, old one split to... (vsx_xvcvdpsp_be): ... this. New. And... (vsx_xvcvdpsp_le): ... this. New. (vsx_xvcvdp[su]xws): New define_expand, old one split to... (vsx_xvcvdpxws_be): ... this. New. And... (vsx_xvcvdpxws_le): ... this. New. (vsx_xvcv[su]xdsp): New define_expand, old one split to... (vsx_xvcvxdsp_be): ... this. New. And... (vsx_xvcvxdsp_le): ... this. New. (vsx_xvcv[su]xwdp): New define_expand, old one split to... (vsx_xvcvxwdp_be): ... this. New. And... (vsx_xvcvxwdp_le): ... this. New. (vsx_xvcvsp[su]xds): New define_expand, old one split to... (vsx_xvcvspxds_be): ... this. New. And... (vsx_xvcvspxds_le): ... this. New.