(match_operand:V4SF 1 "register_operand" "0,0,Yv")
(const_int 3)))
(clobber (match_scratch:V4SF 3 "=X,x,Yv"))]
- "TARGET_SSE || TARGET_MMX_WITH_SSE"
+ "(TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSE"
"@
cvtpi2ps\t{%2, %0|%0, %2}
#
rtx op2 = lowpart_subreg (V4SImode, operands[2],
GET_MODE (operands[2]));
/* Generate SSE2 cvtdq2ps. */
- rtx insn = gen_floatv4siv4sf2 (operands[3], op2);
- emit_insn (insn);
+ emit_insn (gen_floatv4siv4sf2 (operands[3], op2));
/* Merge operands[3] with operands[0]. */
rtx mask, op1;
GEN_INT (6), GEN_INT (7)));
op1 = gen_rtx_VEC_CONCAT (V8SFmode, operands[3], operands[1]);
op2 = gen_rtx_VEC_SELECT (V4SFmode, op1, mask);
- insn = gen_rtx_SET (operands[0], op2);
+ emit_insn (gen_rtx_SET (operands[0], op2));
}
else
{
GEN_INT (4), GEN_INT (5)));
op1 = gen_rtx_VEC_CONCAT (V8SFmode, operands[0], operands[3]);
op2 = gen_rtx_VEC_SELECT (V4SFmode, op1, mask);
- insn = gen_rtx_SET (operands[0], op2);
- emit_insn (insn);
+ emit_insn (gen_rtx_SET (operands[0], op2));
/* Swap bits 0:63 with bits 64:127. */
mask = gen_rtx_PARALLEL (VOIDmode,
rtx dest = lowpart_subreg (V4SImode, operands[0],
GET_MODE (operands[0]));
op1 = gen_rtx_VEC_SELECT (V4SImode, dest, mask);
- insn = gen_rtx_SET (dest, op1);
+ emit_insn (gen_rtx_SET (dest, op1));
}
- emit_insn (insn);
DONE;
}
[(set_attr "mmx_isa" "native,x64_noavx,x64_avx")
/* Emulate MMX palignrdi with SSE psrldq. */
rtx op0 = lowpart_subreg (V2DImode, operands[0],
GET_MODE (operands[0]));
- rtx insn;
if (TARGET_AVX)
- insn = gen_vec_concatv2di (op0, operands[2], operands[1]);
+ emit_insn (gen_vec_concatv2di (op0, operands[2], operands[1]));
else
{
/* NB: SSE can only concatenate OP0 and OP1 to OP0. */
- insn = gen_vec_concatv2di (op0, operands[1], operands[2]);
- emit_insn (insn);
+ emit_insn (gen_vec_concatv2di (op0, operands[1], operands[2]));
/* Swap bits 0:63 with bits 64:127. */
rtx mask = gen_rtx_PARALLEL (VOIDmode,
gen_rtvec (4, GEN_INT (2),
GEN_INT (1)));
rtx op1 = lowpart_subreg (V4SImode, op0, GET_MODE (op0));
rtx op2 = gen_rtx_VEC_SELECT (V4SImode, op1, mask);
- insn = gen_rtx_SET (op1, op2);
+ emit_insn (gen_rtx_SET (op1, op2));
}
- emit_insn (insn);
operands[0] = lowpart_subreg (V1TImode, op0, GET_MODE (op0));
}
[(set_attr "mmx_isa" "native,x64_noavx,x64_avx")