* frame.h (frame_map_regnum_to_name): Remove prototype.

(frame_map_name_to_regnum): Remove prototype.
	* frame.c (frame_map_regnum_to_name): Remove.
	(frame_map_name_to_regnum): Remove.
	(frame_unwind_register_value): Use user_reg_map_regnum_to_name
	instead of frame_map_regnum_to_name.
	* ax-gdb.c: Include "user-regs.h".
	(gen_expr): Use user_reg_map_name_to_regnum instead of
	frame_map_name_to_regnum.
	* eval.c:  Include "user-regs.h".
	(evaluate_subexp_standard): Use user_reg_map_name_to_regnum
	instead of frame_map_name_to_regnum.
	* infcmd.c (registers_info): Likewise.
	* parse.c: Include "user-regs.h".
	(write_dollar_variable): Use user_reg_map_name_to_regnum
	instead of frame_map_name_to_regnum.
	* tracepoint.c: Include "user-regs.h".
	(encode_actions): Use user_reg_map_name_to_regnum
	instead of frame_map_name_to_regnum.
	* valops.c: Include "user-regs.h".
	(value_fetch_lazy): Use user_reg_map_regnum_to_name instead
	of frame_map_regnum_to_name.
This commit is contained in:
Ulrich Weigand 2008-08-21 20:13:08 +00:00
parent e84ee2403c
commit 029a67e44a
9 changed files with 45 additions and 40 deletions

View File

@ -1,3 +1,28 @@
2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
* frame.h (frame_map_regnum_to_name): Remove prototype.
(frame_map_name_to_regnum): Remove prototype.
* frame.c (frame_map_regnum_to_name): Remove.
(frame_map_name_to_regnum): Remove.
(frame_unwind_register_value): Use user_reg_map_regnum_to_name
instead of frame_map_regnum_to_name.
* ax-gdb.c: Include "user-regs.h".
(gen_expr): Use user_reg_map_name_to_regnum instead of
frame_map_name_to_regnum.
* eval.c: Include "user-regs.h".
(evaluate_subexp_standard): Use user_reg_map_name_to_regnum
instead of frame_map_name_to_regnum.
* infcmd.c (registers_info): Likewise.
* parse.c: Include "user-regs.h".
(write_dollar_variable): Use user_reg_map_name_to_regnum
instead of frame_map_name_to_regnum.
* tracepoint.c: Include "user-regs.h".
(encode_actions): Use user_reg_map_name_to_regnum
instead of frame_map_name_to_regnum.
* valops.c: Include "user-regs.h".
(value_fetch_lazy): Use user_reg_map_regnum_to_name instead
of frame_map_regnum_to_name.
2008-08-21 Ulrich Weigand <uweigand@de.ibm.com> 2008-08-21 Ulrich Weigand <uweigand@de.ibm.com>
* ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read * ppc-linux-tdep.c (ppc64_linux_convert_from_func_ptr_addr): Read

View File

@ -33,6 +33,7 @@
#include "gdb_string.h" #include "gdb_string.h"
#include "block.h" #include "block.h"
#include "regcache.h" #include "regcache.h"
#include "user-regs.h"
/* To make sense of this file, you should read doc/agentexpr.texi. /* To make sense of this file, you should read doc/agentexpr.texi.
Then look at the types and enums in ax-gdb.h. For the code itself, Then look at the types and enums in ax-gdb.h. For the code itself,
@ -1592,8 +1593,8 @@ gen_expr (union exp_element **pc, struct agent_expr *ax,
const char *name = &(*pc)[2].string; const char *name = &(*pc)[2].string;
int reg; int reg;
(*pc) += 4 + BYTES_TO_EXP_ELEM ((*pc)[1].longconst + 1); (*pc) += 4 + BYTES_TO_EXP_ELEM ((*pc)[1].longconst + 1);
reg = frame_map_name_to_regnum (deprecated_safe_get_selected_frame (), reg = user_reg_map_name_to_regnum (current_gdbarch,
name, strlen (name)); name, strlen (name));
if (reg == -1) if (reg == -1)
internal_error (__FILE__, __LINE__, internal_error (__FILE__, __LINE__,
_("Register $%s not available"), name); _("Register $%s not available"), name);

View File

@ -38,6 +38,7 @@
#include "ui-out.h" #include "ui-out.h"
#include "exceptions.h" #include "exceptions.h"
#include "regcache.h" #include "regcache.h"
#include "user-regs.h"
#include "gdb_assert.h" #include "gdb_assert.h"
@ -538,8 +539,8 @@ evaluate_subexp_standard (struct type *expect_type,
struct value *val; struct value *val;
(*pos) += 3 + BYTES_TO_EXP_ELEM (exp->elts[pc + 1].longconst + 1); (*pos) += 3 + BYTES_TO_EXP_ELEM (exp->elts[pc + 1].longconst + 1);
regno = frame_map_name_to_regnum (deprecated_safe_get_selected_frame (), regno = user_reg_map_name_to_regnum (current_gdbarch,
name, strlen (name)); name, strlen (name));
if (regno == -1) if (regno == -1)
error (_("Register $%s not available."), name); error (_("Register $%s not available."), name);

View File

@ -619,7 +619,8 @@ frame_unwind_register_value (struct frame_info *frame, int regnum)
fprintf_unfiltered (gdb_stdlog, "\ fprintf_unfiltered (gdb_stdlog, "\
{ frame_unwind_register_value (frame=%d,regnum=%d(%s),...) ", { frame_unwind_register_value (frame=%d,regnum=%d(%s),...) ",
frame->level, regnum, frame->level, regnum,
frame_map_regnum_to_name (frame, regnum)); user_reg_map_regnum_to_name
(get_frame_arch (frame), regnum));
} }
/* Find the unwinder. */ /* Find the unwinder. */
@ -834,22 +835,6 @@ put_frame_register_bytes (struct frame_info *frame, int regnum,
} }
} }
/* Map between a frame register number and its name. A frame register
space is a superset of the cooked register space --- it also
includes builtin registers. */
int
frame_map_name_to_regnum (struct frame_info *frame, const char *name, int len)
{
return user_reg_map_name_to_regnum (get_frame_arch (frame), name, len);
}
const char *
frame_map_regnum_to_name (struct frame_info *frame, int regnum)
{
return user_reg_map_regnum_to_name (get_frame_arch (frame), regnum);
}
/* Create a sentinel frame. */ /* Create a sentinel frame. */
static struct frame_info * static struct frame_info *

View File

@ -501,16 +501,6 @@ extern void put_frame_register_bytes (struct frame_info *frame, int regnum,
CORE_ADDR offset, int len, CORE_ADDR offset, int len,
const gdb_byte *myaddr); const gdb_byte *myaddr);
/* Map between a frame register number and its name. A frame register
space is a superset of the cooked register space --- it also
includes builtin registers. If NAMELEN is negative, use the NAME's
length when doing the comparison. */
extern int frame_map_name_to_regnum (struct frame_info *frame,
const char *name, int namelen);
extern const char *frame_map_regnum_to_name (struct frame_info *frame,
int regnum);
/* Unwind the PC. Strictly speaking return the resume address of the /* Unwind the PC. Strictly speaking return the resume address of the
calling frame. For GDB, `pc' is the resume address and not a calling frame. For GDB, `pc' is the resume address and not a
specific register. */ specific register. */

View File

@ -1783,7 +1783,7 @@ registers_info (char *addr_exp, int fpregs)
/* A register name? */ /* A register name? */
{ {
int regnum = frame_map_name_to_regnum (frame, start, end - start); int regnum = user_reg_map_name_to_regnum (gdbarch, start, end - start);
if (regnum >= 0) if (regnum >= 0)
{ {
/* User registers lie completely outside of the range of /* User registers lie completely outside of the range of

View File

@ -53,6 +53,7 @@
#include "source.h" #include "source.h"
#include "objfiles.h" #include "objfiles.h"
#include "exceptions.h" #include "exceptions.h"
#include "user-regs.h"
/* Standard set of definitions for printing, dumping, prefixifying, /* Standard set of definitions for printing, dumping, prefixifying,
* and evaluating expressions. */ * and evaluating expressions. */
@ -543,8 +544,8 @@ write_dollar_variable (struct stoken str)
/* Handle tokens that refer to machine registers: /* Handle tokens that refer to machine registers:
$ followed by a register name. */ $ followed by a register name. */
i = frame_map_name_to_regnum (deprecated_safe_get_selected_frame (), i = user_reg_map_name_to_regnum (current_gdbarch,
str.ptr + 1, str.length - 1); str.ptr + 1, str.length - 1);
if (i >= 0) if (i >= 0)
goto handle_register; goto handle_register;

View File

@ -37,6 +37,7 @@
#include "block.h" #include "block.h"
#include "dictionary.h" #include "dictionary.h"
#include "observer.h" #include "observer.h"
#include "user-regs.h"
#include "ax.h" #include "ax.h"
#include "ax-gdb.h" #include "ax-gdb.h"
@ -1574,8 +1575,8 @@ encode_actions (struct tracepoint *t, char ***tdp_actions,
{ {
const char *name = &exp->elts[2].string; const char *name = &exp->elts[2].string;
i = frame_map_name_to_regnum (deprecated_safe_get_selected_frame (), i = user_reg_map_name_to_regnum (current_gdbarch,
name, strlen (name)); name, strlen (name));
if (i == -1) if (i == -1)
internal_error (__FILE__, __LINE__, internal_error (__FILE__, __LINE__,
_("Register $%s not available"), _("Register $%s not available"),

View File

@ -37,6 +37,7 @@
#include "dictionary.h" #include "dictionary.h"
#include "cp-support.h" #include "cp-support.h"
#include "dfp.h" #include "dfp.h"
#include "user-regs.h"
#include <errno.h> #include <errno.h>
#include "gdb_string.h" #include "gdb_string.h"
@ -663,13 +664,15 @@ value_fetch_lazy (struct value *val)
if (frame_debug) if (frame_debug)
{ {
struct gdbarch *gdbarch;
frame = frame_find_by_id (VALUE_FRAME_ID (val)); frame = frame_find_by_id (VALUE_FRAME_ID (val));
regnum = VALUE_REGNUM (val); regnum = VALUE_REGNUM (val);
gdbarch = get_frame_arch (frame);
fprintf_unfiltered (gdb_stdlog, "\ fprintf_unfiltered (gdb_stdlog, "\
{ value_fetch_lazy (frame=%d,regnum=%d(%s),...) ", { value_fetch_lazy (frame=%d,regnum=%d(%s),...) ",
frame_relative_level (frame), regnum, frame_relative_level (frame), regnum,
frame_map_regnum_to_name (frame, regnum)); user_reg_map_regnum_to_name (gdbarch, regnum));
fprintf_unfiltered (gdb_stdlog, "->"); fprintf_unfiltered (gdb_stdlog, "->");
if (value_optimized_out (new_val)) if (value_optimized_out (new_val))
@ -690,9 +693,7 @@ value_fetch_lazy (struct value *val)
fprintf_unfiltered (gdb_stdlog, " bytes="); fprintf_unfiltered (gdb_stdlog, " bytes=");
fprintf_unfiltered (gdb_stdlog, "["); fprintf_unfiltered (gdb_stdlog, "[");
for (i = 0; for (i = 0; i < register_size (gdbarch, regnum); i++)
i < register_size (get_frame_arch (frame), regnum);
i++)
fprintf_unfiltered (gdb_stdlog, "%02x", buf[i]); fprintf_unfiltered (gdb_stdlog, "%02x", buf[i]);
fprintf_unfiltered (gdb_stdlog, "]"); fprintf_unfiltered (gdb_stdlog, "]");
} }