static int msym_count;
-/* Prototypes for local functions. */
-
-static int compare_minimal_symbols (const PTR, const PTR);
-
-static int
-compact_minimal_symbols (struct minimal_symbol *, int, struct objfile *);
-
-static void add_minsym_to_demangled_hash_table (struct minimal_symbol *sym,
- struct minimal_symbol **table);
-
/* Compute a hash code based using the same criteria as `strcmp_iw'. */
unsigned int
while (isspace (*string))
++string;
if (*string && *string != '(')
- hash = (31 * hash) + *string;
- ++string;
+ {
+ hash = hash * 67 + *string - 113;
+ ++string;
+ }
}
return hash % MINIMAL_SYMBOL_HASH_SIZE;
}
{
unsigned int hash = 0;
for (; *string; ++string)
- hash = (31 * hash) + *string;
+ hash = hash * 67 + *string - 113;
return hash % MINIMAL_SYMBOL_HASH_SIZE;
}
{
/* Try again without the filename. */
p[n] = 0;
- msym = lookup_minimal_symbol (p, 0, objfile);
+ msym = lookup_minimal_symbol (p, NULL, objfile);
}
if (msym == NULL && filename != NULL)
{
/* And try again for Sun Fortran, but without the filename. */
p[n] = '_';
p[n + 1] = 0;
- msym = lookup_minimal_symbol (p, 0, objfile);
+ msym = lookup_minimal_symbol (p, NULL, objfile);
}
return msym == NULL ? 0 : SYMBOL_VALUE_ADDRESS (msym);
Within groups with the same address, sort by name. */
static int
-compare_minimal_symbols (const PTR fn1p, const PTR fn2p)
+compare_minimal_symbols (const void *fn1p, const void *fn2p)
{
register const struct minimal_symbol *fn1;
register const struct minimal_symbol *fn2;