diff options
author | obrien <obrien@FreeBSD.org> | 2001-05-28 05:21:37 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2001-05-28 05:21:37 +0000 |
commit | 328e45595b12375b6d16a846069507d25086abdb (patch) | |
tree | ae2a6f4f4987889b7bd2af7bdf0b86fa580df011 /contrib/binutils/gas/hash.c | |
parent | 7fbb72605a1c3bcb81f8b6bb6297ffef30f84335 (diff) | |
download | FreeBSD-src-328e45595b12375b6d16a846069507d25086abdb.zip FreeBSD-src-328e45595b12375b6d16a846069507d25086abdb.tar.gz |
Import of GNU Binutils version 2.11.0.
Believe it or not, this is heavily stripped down.
Diffstat (limited to 'contrib/binutils/gas/hash.c')
-rw-r--r-- | contrib/binutils/gas/hash.c | 62 |
1 files changed, 34 insertions, 28 deletions
diff --git a/contrib/binutils/gas/hash.c b/contrib/binutils/gas/hash.c index 0f129fb..f2e98a6 100644 --- a/contrib/binutils/gas/hash.c +++ b/contrib/binutils/gas/hash.c @@ -1,5 +1,5 @@ /* hash.c -- gas hash table code - Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 98, 1999 + Copyright (C) 1987, 90, 91, 92, 93, 94, 95, 96, 98, 99, 2000 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -37,8 +37,7 @@ /* An entry in a hash table. */ -struct hash_entry -{ +struct hash_entry { /* Next entry for this hash code. */ struct hash_entry *next; /* String being hashed. */ @@ -52,8 +51,7 @@ struct hash_entry /* A hash table. */ -struct hash_control -{ +struct hash_control { /* The hash array. */ struct hash_entry **table; /* The number of slots in the hash table. */ @@ -99,7 +97,7 @@ hash_new () ret->deletions = 0; #endif - return ret; + return ret; } /* Delete a hash table, freeing all allocated memory. */ @@ -222,7 +220,7 @@ hash_insert (table, key, value) ++table->insertions; #endif - p = obstack_alloc (&table->memory, sizeof *p); + p = (struct hash_entry *) obstack_alloc (&table->memory, sizeof (*p)); p->string = key; p->hash = hash; p->data = value; @@ -262,7 +260,7 @@ hash_jam (table, key, value) ++table->insertions; #endif - p = obstack_alloc (&table->memory, sizeof *p); + p = (struct hash_entry *) obstack_alloc (&table->memory, sizeof (*p)); p->string = key; p->hash = hash; p->data = value; @@ -415,14 +413,23 @@ hash_print_statistics (f, name, table) /* This test program is left over from the old hash table code. */ -#define TABLES (6) /* number of hash tables to maintain */ - /* (at once) in any testing */ -#define STATBUFSIZE (12) /* we can have 12 statistics */ +/* Number of hash tables to maintain (at once) in any testing. */ +#define TABLES (6) + +/* We can have 12 statistics. */ +#define STATBUFSIZE (12) + +/* Display statistics here. */ +int statbuf[STATBUFSIZE]; + +/* Human farts here. */ +char answer[100]; -int statbuf[STATBUFSIZE]; /* display statistics here */ -char answer[100]; /* human farts here */ -char *hashtable[TABLES]; /* we test many hash tables at once */ -char *h; /* points to curent hash_control */ +/* We test many hash tables at once. */ +char *hashtable[TABLES]; + +/* Points to curent hash_control. */ +char *h; char **pp; char *p; char *name; @@ -430,8 +437,9 @@ char *value; int size; int used; char command; -int number; /* number 0:TABLES-1 of current hashed */ - /* symbol table */ + +/* Number 0:TABLES-1 of current hashed symbol table. */ +int number; int main () @@ -450,7 +458,7 @@ main () gets (answer); command = answer[0]; if (isupper (command)) - command = tolower (command); /* ecch! */ + command = tolower (command); /* Ecch! */ switch (command) { case '#': @@ -460,8 +468,8 @@ main () case '?': for (pp = hashtable; pp < hashtable + TABLES; pp++) { - printf ("address of hash table #%d control block is %xx\n" - ,pp - hashtable, *pp); + printf ("address of hash table #%d control block is %xx\n", + pp - hashtable, *pp); } break; case 'a': @@ -542,7 +550,7 @@ what (description) printf (" %s : ", description); gets (answer); - /* will one day clean up answer here */ + /* Will one day clean up answer here. */ retval = malloc (strlen (answer) + 1); if (!retval) { @@ -561,7 +569,6 @@ destroy (string, value) free (value); } - void applicatee (string, value) char *string; @@ -570,11 +577,12 @@ applicatee (string, value) printf ("%.20s-%.20s\n", string, value); } +/* Determine number: what hash table to use. + Also determine h: points to hash_control. */ + void -whattable () /* determine number: what hash table to use */ - /* also determine h: points to hash_control */ +whattable () { - for (;;) { printf (" what hash table (%d:%d) ? ", 0, TABLES - 1); @@ -596,6 +604,4 @@ whattable () /* determine number: what hash table to use */ } } -#endif /* #ifdef TEST */ - -/* end of hash.c */ +#endif /* TEST */ |