+2005-06-19 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/vect.md (vec_extractv2sf_1): Fix cut-and-paste error;
+ the shift is always required.
+
2005-06-19 Richard Henderson <rth@redhat.com>
* config/ia64/ia64-modes.def (V4SF): Add.
})
(define_insn_and_split "*vec_extractv2sf_1"
- [(set (match_operand:SF 0 "register_operand" "=rf")
+ [(set (match_operand:SF 0 "register_operand" "=r")
(unspec:SF [(match_operand:V2SF 1 "register_operand" "r")
(const_int 1)]
UNSPEC_VECT_EXTR))]
"reload_completed"
[(const_int 0)]
{
- if (FR_REGNO_P (REGNO (operands[0])))
- {
- operands[1] = gen_rtx_REG (SFmode, REGNO (operands[1]));
- emit_move_insn (operands[0], operands[1]);
- }
- else
- {
- operands[0] = gen_rtx_REG (DImode, REGNO (operands[0]));
- operands[1] = gen_rtx_REG (DImode, REGNO (operands[1]));
- emit_insn (gen_lshrdi3 (operands[0], operands[1], GEN_INT (32)));
- }
+ operands[0] = gen_rtx_REG (DImode, REGNO (operands[0]));
+ operands[1] = gen_rtx_REG (DImode, REGNO (operands[1]));
+ emit_insn (gen_lshrdi3 (operands[0], operands[1], GEN_INT (32)));
DONE;
})