From: Richard Sandiford Date: Tue, 11 Jan 2022 12:47:05 +0000 (+0000) Subject: ira: Fix s390 build X-Git-Tag: basepoints/gcc-13~1878 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a923fa6d3b0424cb0eb50de49877515e802c4cb0;p=thirdparty%2Fgcc.git ira: Fix s390 build My g:01f3e6a40e7202310abbeb41c345d325bd69554f broke the s390 build because the rclass variable was still needed by the IRA_HARD_REGNO_ADD_COST_MULTIPLIER code. gcc/ * ira-costs.c (ira_tune_allocno_costs): Fix missing rclass definition in IRA_HARD_REGNO_ADD_COST_MULTIPLIER code. --- diff --git a/gcc/ira-costs.c b/gcc/ira-costs.c index cbb58d32be81..1e4cf5a35e4e 100644 --- a/gcc/ira-costs.c +++ b/gcc/ira-costs.c @@ -2351,10 +2351,13 @@ ira_tune_allocno_costs (void) if (ira_need_caller_save_p (a, regno)) cost += ira_caller_save_cost (a); #ifdef IRA_HARD_REGNO_ADD_COST_MULTIPLIER - cost += ((ira_memory_move_cost[mode][rclass][0] - + ira_memory_move_cost[mode][rclass][1]) - * ALLOCNO_FREQ (a) - * IRA_HARD_REGNO_ADD_COST_MULTIPLIER (regno) / 2); + { + auto rclass = REGNO_REG_CLASS (regno); + cost += ((ira_memory_move_cost[mode][rclass][0] + + ira_memory_move_cost[mode][rclass][1]) + * ALLOCNO_FREQ (a) + * IRA_HARD_REGNO_ADD_COST_MULTIPLIER (regno) / 2); + } #endif if (INT_MAX - cost < reg_costs[j]) reg_costs[j] = INT_MAX;