Move read_mem to dwarf_expr_context
Following the idea of merging the evaluators, the read_mem method can be moved from dwarf_expr_executor and dwarf_evaluate_loc_desc classes to their base class dwarf_expr_context. gdb/ChangeLog: * dwarf2/expr.c (dwarf_expr_context::read_mem): Move from dwarf_evaluate_loc_desc. * dwarf2/frame.c (dwarf_expr_executor::read_mem): Remove method. * dwarf2/loc.c (dwarf_evaluate_loc_desc::read_mem): Move to dwarf_expr_context.
This commit is contained in:
parent
73e6b86330
commit
3c7c57cdc0
4 changed files with 10 additions and 13 deletions
|
@ -249,6 +249,15 @@ dwarf_expr_context::dwarf_call (cu_offset die_cu_off)
|
|||
this->eval (block.data, block.size);
|
||||
}
|
||||
|
||||
/* See expr.h. */
|
||||
|
||||
void
|
||||
dwarf_expr_context::read_mem (gdb_byte *buf, CORE_ADDR addr,
|
||||
size_t length)
|
||||
{
|
||||
read_memory (addr, buf, length);
|
||||
}
|
||||
|
||||
/* Require that TYPE be an integral type; throw an exception if not. */
|
||||
|
||||
static void
|
||||
|
|
|
@ -192,7 +192,7 @@ struct dwarf_expr_context
|
|||
CORE_ADDR obj_address = 0;
|
||||
|
||||
/* Read LENGTH bytes at ADDR into BUF. */
|
||||
virtual void read_mem (gdb_byte *buf, CORE_ADDR addr, size_t length) = 0;
|
||||
virtual void read_mem (gdb_byte *buf, CORE_ADDR addr, size_t length);
|
||||
|
||||
/* Push on DWARF stack an entry evaluated for DW_TAG_call_site's
|
||||
parameter matching KIND and KIND_U at the caller of specified BATON.
|
||||
|
|
|
@ -232,11 +232,6 @@ public:
|
|||
: dwarf_expr_context (per_objfile)
|
||||
{}
|
||||
|
||||
void read_mem (gdb_byte *buf, CORE_ADDR addr, size_t len) override
|
||||
{
|
||||
read_memory (addr, buf, len);
|
||||
}
|
||||
|
||||
void push_dwarf_reg_entry_value (enum call_site_parameter_kind kind,
|
||||
union call_site_parameter_u kind_u,
|
||||
int deref_size) override
|
||||
|
|
|
@ -728,13 +728,6 @@ public:
|
|||
|
||||
this->eval (data_src, size);
|
||||
}
|
||||
|
||||
/* Read memory at ADDR (length LEN) into BUF. */
|
||||
|
||||
void read_mem (gdb_byte *buf, CORE_ADDR addr, size_t len) override
|
||||
{
|
||||
read_memory (addr, buf, len);
|
||||
}
|
||||
};
|
||||
|
||||
/* See dwarf2loc.h. */
|
||||
|
|
Loading…
Add table
Reference in a new issue