2002-04-24 David S. Miller <davem@redhat.com>

* symtab.h (find_stab_function_addr): Kill extern.
	* minsyms.c (find_stab_function_addr): Remove from here...
	* dbxread.c: ... to here, and mark it static.
This commit is contained in:
David S. Miller 2002-04-24 08:00:54 +00:00
parent 69cdf6a234
commit 4867e41ec7
4 changed files with 52 additions and 50 deletions

View File

@ -1,3 +1,9 @@
2002-04-24 David S. Miller <davem@redhat.com>
* symtab.h (find_stab_function_addr): Kill extern.
* minsyms.c (find_stab_function_addr): Remove from here...
* dbxread.c: ... to here, and mark it static.
2002-04-20 David S. Miller <davem@redhat.com>
* sparc-tdep.c (sparc_pop_frame): Only need to allocate

View File

@ -1230,6 +1230,52 @@ read_dbx_dynamic_symtab (struct objfile *objfile)
do_cleanups (back_to);
}
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
CORE_ADDR
find_stab_function_addr (char *namestring, char *filename,
struct objfile *objfile)
{
struct minimal_symbol *msym;
char *p;
int n;
p = strchr (namestring, ':');
if (p == NULL)
p = namestring;
n = p - namestring;
p = alloca (n + 2);
strncpy (p, namestring, n);
p[n] = 0;
msym = lookup_minimal_symbol (p, filename, objfile);
if (msym == NULL)
{
/* Sun Fortran appends an underscore to the minimal symbol name,
try again with an appended underscore if the minimal symbol
was not found. */
p[n] = '_';
p[n + 1] = 0;
msym = lookup_minimal_symbol (p, filename, objfile);
}
if (msym == NULL && filename != NULL)
{
/* Try again without the filename. */
p[n] = 0;
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, NULL, objfile);
}
return msym == NULL ? 0 : SYMBOL_VALUE_ADDRESS (msym);
}
#endif /* SOFUN_ADDRESS_MAYBE_MISSING */
/* Setup partial_symtab's describing each source file for which
debugging information is available. */

View File

@ -504,52 +504,6 @@ lookup_minimal_symbol_by_pc (CORE_ADDR pc)
{
return lookup_minimal_symbol_by_pc_section (pc, find_pc_mapped_section (pc));
}
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
CORE_ADDR
find_stab_function_addr (char *namestring, char *filename,
struct objfile *objfile)
{
struct minimal_symbol *msym;
char *p;
int n;
p = strchr (namestring, ':');
if (p == NULL)
p = namestring;
n = p - namestring;
p = alloca (n + 2);
strncpy (p, namestring, n);
p[n] = 0;
msym = lookup_minimal_symbol (p, filename, objfile);
if (msym == NULL)
{
/* Sun Fortran appends an underscore to the minimal symbol name,
try again with an appended underscore if the minimal symbol
was not found. */
p[n] = '_';
p[n + 1] = 0;
msym = lookup_minimal_symbol (p, filename, objfile);
}
if (msym == NULL && filename != NULL)
{
/* Try again without the filename. */
p[n] = 0;
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, NULL, objfile);
}
return msym == NULL ? 0 : SYMBOL_VALUE_ADDRESS (msym);
}
#endif /* SOFUN_ADDRESS_MAYBE_MISSING */
/* Return leading symbol character for a BFD. If BFD is NULL,

View File

@ -1139,10 +1139,6 @@ extern struct minimal_symbol *prim_record_minimal_symbol_and_info
enum minimal_symbol_type,
char *info, int section, asection * bfd_section, struct objfile *);
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
extern CORE_ADDR find_stab_function_addr (char *, char *, struct objfile *);
#endif
extern unsigned int msymbol_hash_iw (const char *);
extern unsigned int msymbol_hash (const char *);