Commit aac375dd by Vladimir Makarov Committed by Vladimir Makarov

re PR target/37633 (wrong register use on sh64)

2008-10-14  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/37633
	* ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Check
	HARD_REGNO_CALL_PART_CLOBBERED.

From-SVN: r141161
parent 22c02455
2008-10-14 Vladimir Makarov <vmakarov@redhat.com>
PR target/37633
* ira-costs.c (ira_tune_allocno_costs_and_cover_classes): Check
HARD_REGNO_CALL_PART_CLOBBERED.
2008-10-15 Vladimir Makarov <vmakarov@redhat.com> 2008-10-15 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/37535 PR middle-end/37535
......
...@@ -1572,8 +1572,8 @@ ira_tune_allocno_costs_and_cover_classes (void) ...@@ -1572,8 +1572,8 @@ ira_tune_allocno_costs_and_cover_classes (void)
regno = ira_class_hard_regs[cover_class][j]; regno = ira_class_hard_regs[cover_class][j];
rclass = REGNO_REG_CLASS (regno); rclass = REGNO_REG_CLASS (regno);
cost = 0; cost = 0;
/* ??? If only part is call clobbered. */ if (! ira_hard_reg_not_in_set_p (regno, mode, call_used_reg_set)
if (! ira_hard_reg_not_in_set_p (regno, mode, call_used_reg_set)) || HARD_REGNO_CALL_PART_CLOBBERED (regno, mode))
cost += (ALLOCNO_CALL_FREQ (a) cost += (ALLOCNO_CALL_FREQ (a)
* (ira_memory_move_cost[mode][rclass][0] * (ira_memory_move_cost[mode][rclass][0]
+ ira_memory_move_cost[mode][rclass][1])); + ira_memory_move_cost[mode][rclass][1]));
......
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