From 5beaf6643b97573248b35b857a7b2b07d90ba390 Mon Sep 17 00:00:00 2001
From: Richard Guenther <rguenther@suse.de>
Date: Tue, 17 May 2011 14:58:18 +0000
Subject: [PATCH] gimple.c (type_hash_pair_compare): Fix comparison.

2011-05-17  Richard Guenther  <rguenther@suse.de>

	* gimple.c (type_hash_pair_compare): Fix comparison.

From-SVN: r173832
---
 gcc/ChangeLog | 4 ++++
 gcc/gimple.c  | 8 +++++---
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3625d9be2482..0e30db8f7e76 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2011-05-17  Richard Guenther  <rguenther@suse.de>
+
+	* gimple.c (type_hash_pair_compare): Fix comparison.
+
 2011-05-17  Richard Guenther  <rguenther@suse.de>
 
 	* gimple.c (iterative_hash_gimple_type): Simplify singleton
diff --git a/gcc/gimple.c b/gcc/gimple.c
index 0c07ac24989a..831ca31e0e51 100644
--- a/gcc/gimple.c
+++ b/gcc/gimple.c
@@ -4070,9 +4070,11 @@ type_hash_pair_compare (const void *p1_, const void *p2_)
 {
   const struct type_hash_pair *p1 = (const struct type_hash_pair *) p1_;
   const struct type_hash_pair *p2 = (const struct type_hash_pair *) p2_;
-  if (p1->hash == p2->hash)
-    return TYPE_UID (p1->type) - TYPE_UID (p2->type);
-  return p1->hash - p2->hash;
+  if (p1->hash < p2->hash)
+    return -1;
+  else if (p1->hash > p2->hash)
+    return 1;
+  return 0;
 }
 
 /* Returning a hash value for gimple type TYPE combined with VAL.
-- 
GitLab