* stabsread.c (define_symbol): Handle `a' symbol type used for

reference parameter passed in a register.
This commit is contained in:
Jeff Law 1995-01-05 08:18:13 +00:00
parent ea6d581719
commit 117a817d90
2 changed files with 19 additions and 0 deletions

View File

@ -1,3 +1,8 @@
Thu Jan 5 01:16:40 1995 Jeff Law (law@snake.cs.utah.edu)
* stabsread.c (define_symbol): Handle `a' symbol type used for
reference parameter passed in a register.
start-sanitize-gdbtk
Wed Jan 4 19:49:10 1995 Stan Shebs <shebs@andros.cygnus.com>

View File

@ -1186,6 +1186,20 @@ define_symbol (valu, string, desc, type, objfile)
add_symbol_to_list (sym, &local_symbols);
break;
case 'a':
/* Reference parameter which is in a register. */
SYMBOL_TYPE (sym) = read_type (&p, objfile);
SYMBOL_CLASS (sym) = LOC_REGPARM_ADDR;
SYMBOL_VALUE (sym) = STAB_REG_TO_REGNUM (valu);
if (SYMBOL_VALUE (sym) >= NUM_REGS)
{
complain (&reg_value_complaint, SYMBOL_SOURCE_NAME (sym));
SYMBOL_VALUE (sym) = SP_REGNUM; /* Known safe, though useless */
}
SYMBOL_NAMESPACE (sym) = VAR_NAMESPACE;
add_symbol_to_list (sym, &local_symbols);
break;
case 'X':
/* This is used by Sun FORTRAN for "function result value".
Sun claims ("dbx and dbxtool interfaces", 2nd ed)