Commit 1209ab5e by Richard Sandiford Committed by Richard Sandiford

mips.c (mips_rtx_costs): Add costs for CINS.

gcc/
	* config/mips/mips.c (mips_rtx_costs): Add costs for CINS.

From-SVN: r190699
parent 3f5685dc
2012-08-26 Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips.c (mips_rtx_costs): Add costs for CINS.
2012-08-26 Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips.c (mips_rtx_costs): Add missing COSTS_N_INSNS
to the size cost of multiplication.
......
......@@ -3677,6 +3677,18 @@ mips_rtx_costs (rtx x, int code, int outer_code, int opno ATTRIBUTE_UNUSED,
+ set_src_cost (XEXP (x, 0), speed));
return true;
}
if (ISA_HAS_CINS && CONST_INT_P (XEXP (x, 1)))
{
rtx op = XEXP (x, 0);
if (GET_CODE (op) == ASHIFT
&& CONST_INT_P (XEXP (op, 1))
&& mask_low_and_shift_p (mode, XEXP (x, 1), XEXP (op, 1), 32))
{
*total = COSTS_N_INSNS (1) + set_src_cost (XEXP (op, 0), speed);
return true;
}
}
/* Fall through. */
case IOR:
......
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