rs6000.c (rs6000_register_move_cost): Make LR/CTR moves expensive on Power7 also.

* config/rs6000/rs6000.c (rs6000_register_move_cost): Make LR/CTR
        moves expensive on Power7 also.

From-SVN: r174292
This commit is contained in:
Pat Haugen 2011-05-26 15:09:31 +00:00 committed by Pat Haugen
parent 1f498652b2
commit c61e40d377
2 changed files with 9 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2011-05-26 Pat Haugen <pthaugen@us.ibm.com>
* config/rs6000/rs6000.c (rs6000_register_move_cost): Make LR/CTR
moves expensive on Power7 also.
2011-05-26 Richard Guenther <rguenther@suse.de>
* fold-const.c (fold_unary_loc): Remove bogus code.

View file

@ -26444,9 +26444,10 @@ rs6000_register_move_cost (enum machine_mode mode,
else if (from == CR_REGS)
ret = 4;
/* Power6 has slower LR/CTR moves so make them more expensive than
memory in order to bias spills to memory .*/
else if (rs6000_cpu == PROCESSOR_POWER6
/* For those processors that have slow LR/CTR moves, make them more
expensive than memory in order to bias spills to memory .*/
else if ((rs6000_cpu == PROCESSOR_POWER6
|| rs6000_cpu == PROCESSOR_POWER7)
&& reg_classes_intersect_p (from, LINK_OR_CTR_REGS))
ret = 6 * hard_regno_nregs[0][mode];