]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gcc: fix PR rtl-optimization/107482
authorMax Filippov <jcmvbkbc@gmail.com>
Mon, 7 Nov 2022 21:58:49 +0000 (13:58 -0800)
committerMax Filippov <jcmvbkbc@gmail.com>
Tue, 8 Nov 2022 09:29:56 +0000 (01:29 -0800)
gcc/
PR rtl-optimization/107482
* ira-color.cc (assign_hard_reg): Only call
update_costs_from_copies when retry_p is false.

gcc/ira-color.cc

index 4a1a325e8e31bc495846e840b0a61251406aeb92..ffe73b61c4505b159cd56b9e49d255aed3c612e1 100644 (file)
@@ -2209,8 +2209,8 @@ assign_hard_reg (ira_allocno_t a, bool retry_p)
     restore_costs_from_copies (a);
   ALLOCNO_HARD_REGNO (a) = best_hard_regno;
   ALLOCNO_ASSIGNED_P (a) = true;
-  if (best_hard_regno >= 0)
-    update_costs_from_copies (a, true, ! retry_p);
+  if (best_hard_regno >= 0 && !retry_p)
+    update_costs_from_copies (a, true, true);
   ira_assert (ALLOCNO_CLASS (a) == aclass);
   /* We don't need updated costs anymore.  */
   ira_free_allocno_updated_costs (a);