Revert the previous change, as it was checked in by mistake.
This commit is contained in:
parent
4c8749fde8
commit
62707793ce
1 changed files with 22 additions and 55 deletions
|
@ -751,33 +751,6 @@ parse_symbol (SYMR *sh, union aux_ext *ax, char *ext_sh, int bigend,
|
|||
|
||||
case stProc: /* Procedure, usually goes into global block */
|
||||
case stStaticProc: /* Static procedure, goes into current block */
|
||||
/* Make sure this is a "real" procedure. Otherwise, skip it. */
|
||||
if (sh->st == stProc && sh->sc != scText)
|
||||
{
|
||||
char *ext_tsym = ext_sh;
|
||||
int keep_counting = 1;
|
||||
SYMR tsym;
|
||||
|
||||
while (keep_counting)
|
||||
{
|
||||
ext_tsym += external_sym_size;
|
||||
(*swap_sym_in) (cur_bfd, ext_tsym, &tsym);
|
||||
count++;
|
||||
switch (tsym.st)
|
||||
{
|
||||
case stParam:
|
||||
break;
|
||||
case stEnd:
|
||||
keep_counting = 0;
|
||||
break;
|
||||
default:
|
||||
complaint (&symfile_complaints,
|
||||
"unknown symbol type 0x%x", sh->st);
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
s = new_symbol (name);
|
||||
SYMBOL_NAMESPACE (s) = VAR_NAMESPACE;
|
||||
SYMBOL_CLASS (s) = LOC_BLOCK;
|
||||
|
@ -3350,34 +3323,6 @@ parse_partial_symbols (struct objfile *objfile)
|
|||
/* FALLTHROUGH */
|
||||
|
||||
case stProc:
|
||||
/* Ignore all parameter symbol records. */
|
||||
if (sh.index >= hdr->iauxMax)
|
||||
{
|
||||
/* Should not happen, but does when cross-compiling
|
||||
with the MIPS compiler. FIXME -- pull later. */
|
||||
index_complaint (name);
|
||||
new_sdx = cur_sdx + 1; /* Don't skip at all */
|
||||
}
|
||||
else
|
||||
new_sdx = AUX_GET_ISYM (fh->fBigendian,
|
||||
(debug_info->external_aux
|
||||
+ fh->iauxBase
|
||||
+ sh.index));
|
||||
|
||||
if (new_sdx <= cur_sdx)
|
||||
{
|
||||
/* This should not happen either... FIXME. */
|
||||
complaint (&symfile_complaints,
|
||||
"bad proc end in aux found from symbol %s",
|
||||
name);
|
||||
new_sdx = cur_sdx + 1; /* Don't skip backward */
|
||||
}
|
||||
|
||||
/* Make sure that this stProc entry represents a "real"
|
||||
procedure. If not, ignore it. */
|
||||
if (sh.st == stProc && sh.sc != scText)
|
||||
goto skip;
|
||||
|
||||
/* Usually there is a local and a global stProc symbol
|
||||
for a function. This means that the function name
|
||||
has already been entered into the mimimal symbol table
|
||||
|
@ -3400,8 +3345,30 @@ parse_partial_symbols (struct objfile *objfile)
|
|||
&objfile->static_psymbols,
|
||||
0, sh.value, psymtab_language, objfile);
|
||||
|
||||
/* Skip over procedure to next one. */
|
||||
if (sh.index >= hdr->iauxMax)
|
||||
{
|
||||
/* Should not happen, but does when cross-compiling
|
||||
with the MIPS compiler. FIXME -- pull later. */
|
||||
index_complaint (name);
|
||||
new_sdx = cur_sdx + 1; /* Don't skip at all */
|
||||
}
|
||||
else
|
||||
new_sdx = AUX_GET_ISYM (fh->fBigendian,
|
||||
(debug_info->external_aux
|
||||
+ fh->iauxBase
|
||||
+ sh.index));
|
||||
procaddr = sh.value;
|
||||
|
||||
if (new_sdx <= cur_sdx)
|
||||
{
|
||||
/* This should not happen either... FIXME. */
|
||||
complaint (&symfile_complaints,
|
||||
"bad proc end in aux found from symbol %s",
|
||||
name);
|
||||
new_sdx = cur_sdx + 1; /* Don't skip backward */
|
||||
}
|
||||
|
||||
cur_sdx = new_sdx;
|
||||
(*swap_sym_in) (cur_bfd,
|
||||
((char *) debug_info->external_sym
|
||||
|
|
Loading…
Add table
Reference in a new issue