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:
parent
3f5685dc35
commit
1209ab5ed6
2 changed files with 16 additions and 0 deletions
|
@ -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
|
||||
|
|
|
@ -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:
|
||||
|
|
Loading…
Add table
Reference in a new issue