From 004a6ce8e739af31a8267c40eb15560610dad28e Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Fri, 12 Sep 2008 05:24:41 +0000 Subject: [PATCH] re PR bootstrap/37424 (IRA merge breaks Solaris/SPARC bootstrap) PR rtl-optimization/37424 * ira-color.c (coalesced_pseudo_reg_slot_compare): Untie by comparing the regnos instead of the addresses. From-SVN: r140312 --- gcc/ChangeLog | 6 ++++++ gcc/ira-color.c | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dea503ebca2..43420dd23cc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-09-12 Eric Botcazou + + PR rtl-optimization/37424 + * ira-color.c (coalesced_pseudo_reg_slot_compare): Untie by comparing + the regnos instead of the addresses. + 2008-09-11 Janis Johnson * ginclude/float.h (DEC_EVAL_METHOD): Correct the macro name. diff --git a/gcc/ira-color.c b/gcc/ira-color.c index 6342e90a923..645d7dc3e53 100644 --- a/gcc/ira-color.c +++ b/gcc/ira-color.c @@ -2171,7 +2171,7 @@ coalesced_pseudo_reg_slot_compare (const void *v1p, const void *v2p) if (a1 == NULL || ALLOCNO_HARD_REGNO (a1) >= 0) { if (a2 == NULL || ALLOCNO_HARD_REGNO (a2) >= 0) - return (const int *) v1p - (const int *) v2p; /* Save the order. */ + return regno1 - regno2; return 1; } else if (a2 == NULL || ALLOCNO_HARD_REGNO (a2) >= 0) @@ -2185,7 +2185,7 @@ coalesced_pseudo_reg_slot_compare (const void *v1p, const void *v2p) total_size2 = MAX (PSEUDO_REGNO_BYTES (regno2), regno_max_ref_width[regno2]); if ((diff = total_size2 - total_size1) != 0) return diff; - return (const int *) v1p - (const int *) v2p; /* Save the order. */ + return regno1 - regno2; } /* Setup REGNO_COALESCED_ALLOCNO_COST and REGNO_COALESCED_ALLOCNO_NUM -- 2.30.2