Commit 22be5918 by Eric Botcazou Committed by Eric Botcazou

ia64.c (ia64_load_pair_ok): Return 0 if the second member of the destination…

ia64.c (ia64_load_pair_ok): Return 0 if the second member of the destination isn't also a FP_REGS register.

	* config/ia64/ia64.c (ia64_load_pair_ok): Return 0 if the second member
	of the destination isn't also a FP_REGS register.

From-SVN: r186177
parent 7b38ee83
2012-04-06 Eric Botcazou <ebotcazou@adacore.com>
* config/ia64/ia64.c (ia64_load_pair_ok): Return 0 if the second member
of the destination isn't also a FP_REGS register.
2012-04-05 Teresa Johnson <tejohnson@google.com>
H.J. Lu <hongjiu.lu@intel.com>
......
......@@ -857,7 +857,11 @@ ia64_move_ok (rtx dst, rtx src)
int
ia64_load_pair_ok (rtx dst, rtx src)
{
if (GET_CODE (dst) != REG || !FP_REGNO_P (REGNO (dst)))
/* ??? There is a thinko in the implementation of the "x" constraint and the
FP_REGS class. The constraint will also reject (reg f30:TI) so we must
also return false for it. */
if (GET_CODE (dst) != REG
|| !(FP_REGNO_P (REGNO (dst)) && FP_REGNO_P (REGNO (dst) + 1)))
return 0;
if (GET_CODE (src) != MEM || MEM_VOLATILE_P (src))
return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment