Commit 811e4f15 by Tom de Vries Committed by Tom de Vries

Fix IRA_HARD_REGNO_ADD_COST_MULTIPLIER in ira_tune_allocno_costs

2014-09-06  Tom de Vries  <tom@codesourcery.com>

	* ira-costs.c (ira_tune_allocno_costs): Don't conditionalize
	IRA_HARD_REGNO_ADD_COST_MULTIPLIER code on
	ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.

From-SVN: r214988
parent da27f556
2014-09-06 Tom de Vries <tom@codesourcery.com>
* ira-costs.c (ira_tune_allocno_costs): Don't conditionalize
IRA_HARD_REGNO_ADD_COST_MULTIPLIER code on
ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS.
2014-09-05 Dominique Dhumieres <dominiq@lps.ens.fr> 2014-09-05 Dominique Dhumieres <dominiq@lps.ens.fr>
PR target/63188 PR target/63188
...@@ -2217,21 +2217,19 @@ ira_tune_allocno_costs (void) ...@@ -2217,21 +2217,19 @@ ira_tune_allocno_costs (void)
crossed_calls_clobber_regs crossed_calls_clobber_regs
= &(ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS (a)); = &(ALLOCNO_CROSSED_CALLS_CLOBBERED_REGS (a));
if (ira_hard_reg_set_intersection_p (regno, mode, if (ira_hard_reg_set_intersection_p (regno, mode,
*crossed_calls_clobber_regs)) *crossed_calls_clobber_regs)
{ && (ira_hard_reg_set_intersection_p (regno, mode,
if (ira_hard_reg_set_intersection_p (regno, mode,
call_used_reg_set) call_used_reg_set)
|| HARD_REGNO_CALL_PART_CLOBBERED (regno, mode)) || 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]));
#ifdef IRA_HARD_REGNO_ADD_COST_MULTIPLIER #ifdef IRA_HARD_REGNO_ADD_COST_MULTIPLIER
cost += ((ira_memory_move_cost[mode][rclass][0] cost += ((ira_memory_move_cost[mode][rclass][0]
+ ira_memory_move_cost[mode][rclass][1]) + ira_memory_move_cost[mode][rclass][1])
* ALLOCNO_FREQ (a) * ALLOCNO_FREQ (a)
* IRA_HARD_REGNO_ADD_COST_MULTIPLIER (regno) / 2); * IRA_HARD_REGNO_ADD_COST_MULTIPLIER (regno) / 2);
#endif #endif
}
if (INT_MAX - cost < reg_costs[j]) if (INT_MAX - cost < reg_costs[j])
reg_costs[j] = INT_MAX; reg_costs[j] = INT_MAX;
else else
......
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