http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54084

--- Comment #7 from Steven Bosscher <steven at gcc dot gnu.org> 2012-07-26 
12:08:31 UTC ---
This is the variant of the patch that I will commit after testing:

Index: sel-sched-ir.c
===================================================================
--- sel-sched-ir.c      (revision 189887)
+++ sel-sched-ir.c      (working copy)
@@ -954,7 +954,13 @@ return_regset_to_pool (regset rs)
 static int
 cmp_v_in_regset_pool (const void *x, const void *xx)
 {
-  return *((const regset *) x) - *((const regset *) xx);
+  uintptr_t r1 = (uintptr_t) *((const regset *) x);
+  uintptr_t r2 = (uintptr_t) *((const regset *) xx);
+  if (r1 > r2)
+    return 1;
+  else if (r1 < r2)
+    return -1;
+  gcc_unreachable ();
 }
 #endif

Reply via email to