One more patch for PR88157

Message ID
State New
Headers show
  • One more patch for PR88157
Related show

Commit Message

Vladimir Makarov Nov. 25, 2018, 5:52 a.m.
Sorry,  my patch for pr88157 caused a lot of ICEs on different 
targets.  The problem that cost vector was not initialized on some 
targets for some modes (we use a lazy approach in cost calculations in 
RA).  Here is the patch which should fix the ICEs.

   Committed as rev. 266435.


Index: ChangeLog
--- ChangeLog	(revision 266434)
+++ ChangeLog	(working copy)
@@ -1,3 +1,9 @@ 
+2018-11-25  Vladimir Makarov  <>
+	PR bootstrap/88157
+	* ira-costs.c (record_operand_costs): Initiate register move cost
+	for mode.
 2018-11-23  Jeff Law  <>
 	PR rtl-optimization/87468
Index: ira-costs.c
--- ira-costs.c	(revision 266422)
+++ ira-costs.c	(working copy)
@@ -1318,6 +1318,7 @@  record_operand_costs (rtx_insn *insn, en
 	  int cost, k;
 	  bool dead_p = find_regno_note (insn, REG_DEAD, REGNO (src));
+	  ira_init_register_move_cost_if_necessary (mode);
 	  hard_reg_class = REGNO_REG_CLASS (other_regno);
 	  /* Target code may return any cost for mode which does not
 	     fit the the hard reg class (e.g. DImode for AREG on