https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121274
Hongtao Liu <liuhongt at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |liuhongt at gcc dot gnu.org --- Comment #4 from Hongtao Liu <liuhongt at gcc dot gnu.org> --- Probably caused by r14-1902-g96c3539f2a3813 - /* Special case TImode to V1TImode conversions, via V2DI. */ - if (mode == V1TImode + /* Special case TImode to 128-bit vector conversions via V2DI. */ + if (VECTOR_MODE_P (mode) + && GET_MODE_SIZE (mode) == 16 && SUBREG_P (op1) && GET_MODE (SUBREG_REG (op1)) == TImode && TARGET_64BIT && TARGET_SSE @@ -709,7 +711,7 @@ ix86_expand_vector_move (machine_mode mode, rtx operands[]) emit_move_insn (lo, gen_lowpart (DImode, SUBREG_REG (op1))); emit_move_insn (hi, gen_highpart (DImode, SUBREG_REG (op1))); emit_insn (gen_vec_concatv2di (tmp, lo, hi)); - emit_move_insn (op0, gen_lowpart (V1TImode, tmp)); + emit_move_insn (op0, gen_lowpart (mode, tmp)); return; }