From: Matthias Braun Date: Mon, 28 Aug 2006 11:55:07 +0000 (+0000) Subject: fix wrong sorting of affinity edges X-Git-Url: http://nsz.repo.hu/git/?a=commitdiff_plain;h=88ea65983c1b95e2421778dc776882f3612e1e14;p=libfirm fix wrong sorting of affinity edges --- diff --git a/ir/be/bespillslots.c b/ir/be/bespillslots.c index ea0eee4f1..c3faf513b 100644 --- a/ir/be/bespillslots.c +++ b/ir/be/bespillslots.c @@ -59,10 +59,11 @@ typedef struct _ss_env_t { /** Compare 2 affinity edges (used in quicksort) */ static int cmp_affinity(const void *d1, const void *d2) { - const affinity_edge_t *e1 = d1; - const affinity_edge_t *e2 = d2; + const affinity_edge_t * const *e1 = d1; + const affinity_edge_t * const *e2 = d2; - return e1->affinity < e2->affinity ? -1 : 1; + // sort in descending order + return (*e1)->affinity < (*e2)->affinity ? 1 : -1; } static int cmp_spill(const void* d1, const void* d2, size_t size) {