2004-11-12 Randolph Chung <tausq@debian.org>

* config/tm/tm-hppa.h (SYMBOLS_CAN_START_WITH_DOLLAR): Remove.
	* parse.c (SYMBOLS_CAN_START_WITH_DOLLAR): Remove.
	(write_exp_msymbol): Remove conditional check for symbols starting
	with $.  Update comments.
This commit is contained in:
Randolph Chung 2004-11-13 02:27:41 +00:00
parent b82f24bfcc
commit d73188182e
3 changed files with 29 additions and 50 deletions

View File

@ -1,3 +1,10 @@
2004-11-12 Randolph Chung <tausq@debian.org>
* config/tm/tm-hppa.h (SYMBOLS_CAN_START_WITH_DOLLAR): Remove.
* parse.c (SYMBOLS_CAN_START_WITH_DOLLAR): Remove.
(write_exp_msymbol): Remove conditional check for symbols starting
with $. Update comments.
2004-11-12 Randolph Chung <tausq@debian.org>
* pa64solib.c (pa64_solib_thread_start_addr): Rename from

View File

@ -34,9 +34,3 @@ extern int hppa_pc_requires_run_before_use (CORE_ADDR pc);
extern int hppa_instruction_nullified (void);
#define INSTRUCTION_NULLIFIED hppa_instruction_nullified ()
#endif
/* On HP-UX, certain system routines (millicode) have names beginning
with $ or $$, e.g. $$dyncall, which handles inter-space procedure
calls on PA-RISC. Tell the expression parser to check for those
when parsing tokens that begin with "$". */
#define SYMBOLS_CAN_START_WITH_DOLLAR (1)

View File

@ -63,21 +63,6 @@ const struct exp_descriptor exp_descriptor_standard =
dump_subexp_body_standard,
evaluate_subexp_standard
};
/* Symbols which architectures can redefine. */
/* Some systems have routines whose names start with `$'. Giving this
macro a non-zero value tells GDB's expression parser to check for
such routines when parsing tokens that begin with `$'.
On HP-UX, certain system routines (millicode) have names beginning
with `$' or `$$'. For example, `$$dyncall' is a millicode routine
that handles inter-space procedure calls on PA-RISC. */
#ifndef SYMBOLS_CAN_START_WITH_DOLLAR
#define SYMBOLS_CAN_START_WITH_DOLLAR (0)
#endif
/* Global variables declared in parser-defs.h (and commented there). */
struct expression *expout;
@ -437,6 +422,9 @@ write_exp_msymbol (struct minimal_symbol *msymbol,
void
write_dollar_variable (struct stoken str)
{
struct symbol *sym = NULL;
struct minimal_symbol *msym = NULL;
/* Handle the tokens $digits; also $ (short for $0) and $$ (short for $$1)
and $$digits (equivalent to $<-digits> if you could type that). */
@ -474,36 +462,26 @@ write_dollar_variable (struct stoken str)
if (i >= 0)
goto handle_register;
if (SYMBOLS_CAN_START_WITH_DOLLAR)
/* On some systems, such as HP-UX and hppa-linux, certain system routines
have names beginning with $ or $$. Check for those, first. */
sym = lookup_symbol (copy_name (str), (struct block *) NULL,
VAR_DOMAIN, (int *) NULL, (struct symtab **) NULL);
if (sym)
{
struct symbol *sym = NULL;
struct minimal_symbol *msym = NULL;
/* On HP-UX, certain system routines (millicode) have names beginning
with $ or $$, e.g. $$dyncall, which handles inter-space procedure
calls on PA-RISC. Check for those, first. */
/* This code is not enabled on non HP-UX systems, since worst case
symbol table lookup performance is awful, to put it mildly. */
sym = lookup_symbol (copy_name (str), (struct block *) NULL,
VAR_DOMAIN, (int *) NULL, (struct symtab **) NULL);
if (sym)
{
write_exp_elt_opcode (OP_VAR_VALUE);
write_exp_elt_block (block_found); /* set by lookup_symbol */
write_exp_elt_sym (sym);
write_exp_elt_opcode (OP_VAR_VALUE);
return;
}
msym = lookup_minimal_symbol (copy_name (str), NULL, NULL);
if (msym)
{
write_exp_msymbol (msym,
lookup_function_type (builtin_type_int),
builtin_type_int);
return;
}
write_exp_elt_opcode (OP_VAR_VALUE);
write_exp_elt_block (block_found); /* set by lookup_symbol */
write_exp_elt_sym (sym);
write_exp_elt_opcode (OP_VAR_VALUE);
return;
}
msym = lookup_minimal_symbol (copy_name (str), NULL, NULL);
if (msym)
{
write_exp_msymbol (msym,
lookup_function_type (builtin_type_int),
builtin_type_int);
return;
}
/* Any other names starting in $ are debugger internal variables. */