From d7b1bb7179d066572d61d136663b0de70c7624c9 Mon Sep 17 00:00:00 2001 From: segher Date: Tue, 25 Nov 2014 17:52:21 +0000 Subject: [PATCH] * bt-load.c (migrate_btr_defs): Get the key of a heap entry before removing it, not after. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@218056 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/bt-load.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index add2e7021e8a..cd9d808fb0db 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2014-11-25 Segher Boessenkool + + * bt-load.c (migrate_btr_defs): Get the key of a heap entry + before removing it, not after. + 2014-11-25 Segher Boessenkool * config/mn10300/mn10300.c (mn10300_insert_setlb_lcc): Remove diff --git a/gcc/bt-load.c b/gcc/bt-load.c index 3002b62e8e13..53c4db31847b 100644 --- a/gcc/bt-load.c +++ b/gcc/bt-load.c @@ -1434,8 +1434,8 @@ migrate_btr_defs (enum reg_class btr_class, int allow_callee_save) while (!all_btr_defs.empty ()) { - btr_def def = all_btr_defs.extract_min (); int min_cost = -all_btr_defs.min_key (); + btr_def def = all_btr_defs.extract_min (); if (migrate_btr_def (def, min_cost)) { all_btr_defs.insert (-def->cost, def); -- 2.47.3