From 65801c1c5d0c18501a01e8fef286e25357248b7b Mon Sep 17 00:00:00 2001 From: bonzini Date: Thu, 8 Jun 2006 15:40:48 +0000 Subject: 2006-06-08 Paolo Bonzini PR middle-end/27733 * expmed.c (struct alg_hash_entry): Fix type of field T to match synth_mult argument. (NUM_ALG_HASH_ENTRIES): Make it bigger for 64-bit HOST_WIDE_INT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@114488 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/expmed.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'gcc/expmed.c') diff --git a/gcc/expmed.c b/gcc/expmed.c index 56c0d24bd66..2e8906eb7a9 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -2395,7 +2395,7 @@ struct algorithm /* The entry for our multiplication cache/hash table. */ struct alg_hash_entry { /* The number we are multiplying by. */ - unsigned int t; + unsigned HOST_WIDE_INT t; /* The mode in which we are multiplying something by T. */ enum machine_mode mode; @@ -2410,7 +2410,11 @@ struct alg_hash_entry { }; /* The number of cache/hash entries. */ +#if HOST_BITS_PER_WIDE_INT == 64 +#define NUM_ALG_HASH_ENTRIES 1031 +#else #define NUM_ALG_HASH_ENTRIES 307 +#endif /* Each entry of ALG_HASH caches alg_code for some integer. This is actually a hash table. If we have a collision, that the older -- cgit v1.2.1