summaryrefslogtreecommitdiff
path: root/gcc/lra-assigns.c
diff options
context:
space:
mode:
authorvmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>2013-05-10 15:26:31 +0000
committervmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4>2013-05-10 15:26:31 +0000
commit904ea1dbd0bc818502846f66ff3de6b55a39f9b1 (patch)
tree0319f366e678b201129e2e8f1ab7abd9afdf66c5 /gcc/lra-assigns.c
parent6b0e18ca48bb4b4c01e7b5be2b98849943fdcf91 (diff)
downloadgcc-904ea1dbd0bc818502846f66ff3de6b55a39f9b1.tar.gz
2013-05-10 Vladimir Makarov <vmakarov@redhat.com>
* lra-assigns.c (find_hard_regno_for): Add 1 to the cost of call saved registers. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198792 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lra-assigns.c')
-rw-r--r--gcc/lra-assigns.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/lra-assigns.c b/gcc/lra-assigns.c
index 3f8a899c7fa..78bc2e7fcf6 100644
--- a/gcc/lra-assigns.c
+++ b/gcc/lra-assigns.c
@@ -598,7 +598,7 @@ find_hard_regno_for (int regno, int *cost, int try_only_hard_regno)
&& ! df_regs_ever_live_p (hard_regno + j))
/* It needs save restore. */
hard_regno_costs[hard_regno]
- += 2 * ENTRY_BLOCK_PTR->next_bb->frequency;
+ += 2 * ENTRY_BLOCK_PTR->next_bb->frequency + 1;
priority = targetm.register_priority (hard_regno);
if (best_hard_regno < 0 || hard_regno_costs[hard_regno] < best_cost
|| (hard_regno_costs[hard_regno] == best_cost