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

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

From-SVN: r190699
This commit is contained in:
Richard Sandiford 2012-08-26 19:19:31 +00:00 committed by Richard Sandiford
parent 3f5685dc35
commit 1209ab5ed6
2 changed files with 16 additions and 0 deletions

View file

@ -1,3 +1,7 @@
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

View file

@ -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: