aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/tree.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/tree.c')
-rw-r--r--gcc-4.9/gcc/tree.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc-4.9/gcc/tree.c b/gcc-4.9/gcc/tree.c
index 3b1ff7645..3b88a4e66 100644
--- a/gcc-4.9/gcc/tree.c
+++ b/gcc-4.9/gcc/tree.c
@@ -1120,8 +1120,10 @@ int_cst_hash_hash (const void *x)
{
const_tree const t = (const_tree) x;
- return (TREE_INT_CST_HIGH (t) ^ TREE_INT_CST_LOW (t)
- ^ TYPE_UID (TREE_TYPE (t)));
+ hashval_t hash = TYPE_UID (TREE_TYPE (t));
+ hash = iterative_hash_host_wide_int (TREE_INT_CST_HIGH (t), hash);
+ hash = iterative_hash_host_wide_int (TREE_INT_CST_LOW (t), hash);
+ return hash;
}
/* Return nonzero if the value represented by *X (an INTEGER_CST tree node)