Rename "read_reg" into "read_addr_from_reg" in struct dwarf_expr_context_funcs
This is to help make it slightly clearer how this method is expected to extract data from the given register. gdb/ChangeLog: * dwarf2expr.h (struct dwarf_expr_context_funcs) <read_addr_from_reg>: Renames "read_reg". * dwarf2-frame.c (read_addr_from_reg): Renames "read_reg". Adjust comment. (dwarf2_frame_ctx_funcs, execute_stack_op, dwarf2_frame_cache): Use read_addr_from_reg in place of read_reg. * dwarf2expr.c (execute_stack_op): Use read_addr_from_reg in place of read_reg. * dwarf2loc.c (dwarf_expr_read_addr_from_reg): Renames dwarf_expr_read_reg. (dwarf_expr_ctx_funcs): Replace dwarf_expr_read_reg with dwarf_expr_read_addr_from_reg. (needs_frame_read_addr_from_reg): Renames needs_frame_read_reg. (needs_frame_ctx_funcs): Replace needs_frame_read_reg with needs_frame_read_addr_from_reg.
This commit is contained in:
parent
2acaf6f952
commit
b13704181f
5 changed files with 36 additions and 15 deletions
|
@ -1,3 +1,21 @@
|
||||||
|
2013-11-17 Joel Brobecker <brobecker@adacore.com>
|
||||||
|
|
||||||
|
* dwarf2expr.h (struct dwarf_expr_context_funcs)
|
||||||
|
<read_addr_from_reg>: Renames "read_reg".
|
||||||
|
* dwarf2-frame.c (read_addr_from_reg): Renames "read_reg".
|
||||||
|
Adjust comment.
|
||||||
|
(dwarf2_frame_ctx_funcs, execute_stack_op, dwarf2_frame_cache):
|
||||||
|
Use read_addr_from_reg in place of read_reg.
|
||||||
|
* dwarf2expr.c (execute_stack_op): Use read_addr_from_reg
|
||||||
|
in place of read_reg.
|
||||||
|
* dwarf2loc.c (dwarf_expr_read_addr_from_reg): Renames
|
||||||
|
dwarf_expr_read_reg.
|
||||||
|
(dwarf_expr_ctx_funcs): Replace dwarf_expr_read_reg
|
||||||
|
with dwarf_expr_read_addr_from_reg.
|
||||||
|
(needs_frame_read_addr_from_reg): Renames needs_frame_read_reg.
|
||||||
|
(needs_frame_ctx_funcs): Replace needs_frame_read_reg with
|
||||||
|
needs_frame_read_addr_from_reg.
|
||||||
|
|
||||||
2013-11-15 Jan Kratochvil <jan.kratochvil@redhat.com>
|
2013-11-15 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
* NEWS (Changes in GDB 7.5) (New commands) (explore): Fix typo.
|
* NEWS (Changes in GDB 7.5) (New commands) (explore): Fix typo.
|
||||||
|
|
|
@ -286,7 +286,7 @@ dwarf2_frame_state_free (void *p)
|
||||||
/* Helper functions for execute_stack_op. */
|
/* Helper functions for execute_stack_op. */
|
||||||
|
|
||||||
static CORE_ADDR
|
static CORE_ADDR
|
||||||
read_reg (void *baton, int reg)
|
read_addr_from_reg (void *baton, int reg)
|
||||||
{
|
{
|
||||||
struct frame_info *this_frame = (struct frame_info *) baton;
|
struct frame_info *this_frame = (struct frame_info *) baton;
|
||||||
struct gdbarch *gdbarch = get_frame_arch (this_frame);
|
struct gdbarch *gdbarch = get_frame_arch (this_frame);
|
||||||
|
@ -301,8 +301,8 @@ read_reg (void *baton, int reg)
|
||||||
/* Convert the register to an integer. This returns a LONGEST
|
/* Convert the register to an integer. This returns a LONGEST
|
||||||
rather than a CORE_ADDR, but unpack_pointer does the same thing
|
rather than a CORE_ADDR, but unpack_pointer does the same thing
|
||||||
under the covers, and this makes more sense for non-pointer
|
under the covers, and this makes more sense for non-pointer
|
||||||
registers. Maybe read_reg and the associated interfaces should
|
registers. Maybe read_addr_from_reg and the associated interfaces
|
||||||
deal with "struct value" instead of CORE_ADDR. */
|
should deal with "struct value" instead of CORE_ADDR. */
|
||||||
return unpack_long (register_type (gdbarch, regnum), buf);
|
return unpack_long (register_type (gdbarch, regnum), buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -358,7 +358,7 @@ register %s (#%d) at %s"),
|
||||||
|
|
||||||
static const struct dwarf_expr_context_funcs dwarf2_frame_ctx_funcs =
|
static const struct dwarf_expr_context_funcs dwarf2_frame_ctx_funcs =
|
||||||
{
|
{
|
||||||
read_reg,
|
read_addr_from_reg,
|
||||||
get_reg_value,
|
get_reg_value,
|
||||||
read_mem,
|
read_mem,
|
||||||
ctx_no_get_frame_base,
|
ctx_no_get_frame_base,
|
||||||
|
@ -397,7 +397,8 @@ execute_stack_op (const gdb_byte *exp, ULONGEST len, int addr_size,
|
||||||
if (ctx->location == DWARF_VALUE_MEMORY)
|
if (ctx->location == DWARF_VALUE_MEMORY)
|
||||||
result = dwarf_expr_fetch_address (ctx, 0);
|
result = dwarf_expr_fetch_address (ctx, 0);
|
||||||
else if (ctx->location == DWARF_VALUE_REGISTER)
|
else if (ctx->location == DWARF_VALUE_REGISTER)
|
||||||
result = read_reg (this_frame, value_as_long (dwarf_expr_fetch (ctx, 0)));
|
result = read_addr_from_reg (this_frame,
|
||||||
|
value_as_long (dwarf_expr_fetch (ctx, 0)));
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* This is actually invalid DWARF, but if we ever do run across
|
/* This is actually invalid DWARF, but if we ever do run across
|
||||||
|
@ -1110,7 +1111,7 @@ dwarf2_frame_cache (struct frame_info *this_frame, void **this_cache)
|
||||||
switch (fs->regs.cfa_how)
|
switch (fs->regs.cfa_how)
|
||||||
{
|
{
|
||||||
case CFA_REG_OFFSET:
|
case CFA_REG_OFFSET:
|
||||||
cache->cfa = read_reg (this_frame, fs->regs.cfa_reg);
|
cache->cfa = read_addr_from_reg (this_frame, fs->regs.cfa_reg);
|
||||||
if (fs->armcc_cfa_offsets_reversed)
|
if (fs->armcc_cfa_offsets_reversed)
|
||||||
cache->cfa -= fs->regs.cfa_offset;
|
cache->cfa -= fs->regs.cfa_offset;
|
||||||
else
|
else
|
||||||
|
|
|
@ -921,7 +921,8 @@ execute_stack_op (struct dwarf_expr_context *ctx,
|
||||||
case DW_OP_breg31:
|
case DW_OP_breg31:
|
||||||
{
|
{
|
||||||
op_ptr = safe_read_sleb128 (op_ptr, op_end, &offset);
|
op_ptr = safe_read_sleb128 (op_ptr, op_end, &offset);
|
||||||
result = (ctx->funcs->read_reg) (ctx->baton, op - DW_OP_breg0);
|
result = (ctx->funcs->read_addr_from_reg) (ctx->baton,
|
||||||
|
op - DW_OP_breg0);
|
||||||
result += offset;
|
result += offset;
|
||||||
result_val = value_from_ulongest (address_type, result);
|
result_val = value_from_ulongest (address_type, result);
|
||||||
}
|
}
|
||||||
|
@ -930,7 +931,7 @@ execute_stack_op (struct dwarf_expr_context *ctx,
|
||||||
{
|
{
|
||||||
op_ptr = safe_read_uleb128 (op_ptr, op_end, ®);
|
op_ptr = safe_read_uleb128 (op_ptr, op_end, ®);
|
||||||
op_ptr = safe_read_sleb128 (op_ptr, op_end, &offset);
|
op_ptr = safe_read_sleb128 (op_ptr, op_end, &offset);
|
||||||
result = (ctx->funcs->read_reg) (ctx->baton, reg);
|
result = (ctx->funcs->read_addr_from_reg) (ctx->baton, reg);
|
||||||
result += offset;
|
result += offset;
|
||||||
result_val = value_from_ulongest (address_type, result);
|
result_val = value_from_ulongest (address_type, result);
|
||||||
}
|
}
|
||||||
|
@ -955,8 +956,9 @@ execute_stack_op (struct dwarf_expr_context *ctx,
|
||||||
if (ctx->location == DWARF_VALUE_MEMORY)
|
if (ctx->location == DWARF_VALUE_MEMORY)
|
||||||
result = dwarf_expr_fetch_address (ctx, 0);
|
result = dwarf_expr_fetch_address (ctx, 0);
|
||||||
else if (ctx->location == DWARF_VALUE_REGISTER)
|
else if (ctx->location == DWARF_VALUE_REGISTER)
|
||||||
result = (ctx->funcs->read_reg) (ctx->baton,
|
result = (ctx->funcs->read_addr_from_reg)
|
||||||
value_as_long (dwarf_expr_fetch (ctx, 0)));
|
(ctx->baton,
|
||||||
|
value_as_long (dwarf_expr_fetch (ctx, 0)));
|
||||||
else
|
else
|
||||||
error (_("Not implemented: computing frame "
|
error (_("Not implemented: computing frame "
|
||||||
"base using explicit value operator"));
|
"base using explicit value operator"));
|
||||||
|
|
|
@ -33,7 +33,7 @@ struct dwarf_expr_context_funcs
|
||||||
{
|
{
|
||||||
/* Return the value of register number REGNUM (a DWARF register number),
|
/* Return the value of register number REGNUM (a DWARF register number),
|
||||||
read as an address. */
|
read as an address. */
|
||||||
CORE_ADDR (*read_reg) (void *baton, int regnum);
|
CORE_ADDR (*read_addr_from_reg) (void *baton, int regnum);
|
||||||
|
|
||||||
/* Return a value of type TYPE, stored in register number REGNUM
|
/* Return a value of type TYPE, stored in register number REGNUM
|
||||||
of the frame associated to the given BATON.
|
of the frame associated to the given BATON.
|
||||||
|
|
|
@ -313,7 +313,7 @@ struct dwarf_expr_baton
|
||||||
/* Using the frame specified in BATON, return the value of register
|
/* Using the frame specified in BATON, return the value of register
|
||||||
REGNUM, treated as a pointer. */
|
REGNUM, treated as a pointer. */
|
||||||
static CORE_ADDR
|
static CORE_ADDR
|
||||||
dwarf_expr_read_reg (void *baton, int dwarf_regnum)
|
dwarf_expr_read_addr_from_reg (void *baton, int dwarf_regnum)
|
||||||
{
|
{
|
||||||
struct dwarf_expr_baton *debaton = (struct dwarf_expr_baton *) baton;
|
struct dwarf_expr_baton *debaton = (struct dwarf_expr_baton *) baton;
|
||||||
struct gdbarch *gdbarch = get_frame_arch (debaton->frame);
|
struct gdbarch *gdbarch = get_frame_arch (debaton->frame);
|
||||||
|
@ -2194,7 +2194,7 @@ static const struct lval_funcs pieced_value_funcs = {
|
||||||
|
|
||||||
static const struct dwarf_expr_context_funcs dwarf_expr_ctx_funcs =
|
static const struct dwarf_expr_context_funcs dwarf_expr_ctx_funcs =
|
||||||
{
|
{
|
||||||
dwarf_expr_read_reg,
|
dwarf_expr_read_addr_from_reg,
|
||||||
dwarf_expr_get_reg_value,
|
dwarf_expr_get_reg_value,
|
||||||
dwarf_expr_read_mem,
|
dwarf_expr_read_mem,
|
||||||
dwarf_expr_frame_base,
|
dwarf_expr_frame_base,
|
||||||
|
@ -2441,7 +2441,7 @@ struct needs_frame_baton
|
||||||
|
|
||||||
/* Reads from registers do require a frame. */
|
/* Reads from registers do require a frame. */
|
||||||
static CORE_ADDR
|
static CORE_ADDR
|
||||||
needs_frame_read_reg (void *baton, int regnum)
|
needs_frame_read_addr_from_reg (void *baton, int regnum)
|
||||||
{
|
{
|
||||||
struct needs_frame_baton *nf_baton = baton;
|
struct needs_frame_baton *nf_baton = baton;
|
||||||
|
|
||||||
|
@ -2541,7 +2541,7 @@ needs_get_addr_index (void *baton, unsigned int index)
|
||||||
|
|
||||||
static const struct dwarf_expr_context_funcs needs_frame_ctx_funcs =
|
static const struct dwarf_expr_context_funcs needs_frame_ctx_funcs =
|
||||||
{
|
{
|
||||||
needs_frame_read_reg,
|
needs_frame_read_addr_from_reg,
|
||||||
needs_frame_get_reg_value,
|
needs_frame_get_reg_value,
|
||||||
needs_frame_read_mem,
|
needs_frame_read_mem,
|
||||||
needs_frame_frame_base,
|
needs_frame_frame_base,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue