aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2expr.h
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2016-09-25 16:28:03 -0600
committerTom Tromey <tom@tromey.com>2016-10-21 14:17:37 -0600
commit718b962660007c529f4ff4c5e940119da21e05a7 (patch)
treeaec64a64fc7753e25948ddc5555b989a359853bd /gdb/dwarf2expr.h
parent5841433461e2ce9da41292a49af4cc3c6b1e1f2d (diff)
downloadgdb-718b962660007c529f4ff4c5e940119da21e05a7.zip
gdb-718b962660007c529f4ff4c5e940119da21e05a7.tar.gz
gdb-718b962660007c529f4ff4c5e940119da21e05a7.tar.bz2
Initial conversion of dwarf_expr_ctx
This is the first step in the conversion of dwarf_expr_ctx to a C++ class. This conversion is done in steps to make the patches, and the reviews, a bit simpler. This patch changes dwarf_expr_ctx to be stack-allocated and removes the associated cleanup. 2016-10-21 Tom Tromey <tom@tromey.com> * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Stack-allocate dwarf_expr_context. Remove cleanups. (dwarf2_locexpr_baton_eval) (dwarf2_loc_desc_get_symbol_read_needs): Likewise. * dwarf2expr.h (dwarf_expr_context, ~dwarf_expr_context): Add constructors and destructors. (new_dwarf_expr_context, free_dwarf_expr_context) (make_cleanup_free_dwarf_expr_context): Don't declare. * dwarf2-frame.c (execute_stack_op): Stack-allocate dwarf_expr_context. Remove cleanups. (dwarf_expr_context): Rename from new_dwarf_expr_context. Turn into constructor. (free_dwarf_expr_context, free_dwarf_expr_context_cleanup): Remove. (~dwarf_expr_context): Rename from make_cleanup_free_dwarf_expr_context. Turn into destructor.
Diffstat (limited to 'gdb/dwarf2expr.h')
-rw-r--r--gdb/dwarf2expr.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/gdb/dwarf2expr.h b/gdb/dwarf2expr.h
index cbab45b..0f94f1e 100644
--- a/gdb/dwarf2expr.h
+++ b/gdb/dwarf2expr.h
@@ -130,6 +130,9 @@ struct dwarf_stack_value
its current state and its callbacks. */
struct dwarf_expr_context
{
+ dwarf_expr_context ();
+ ~dwarf_expr_context ();
+
/* The stack of values, allocated with xmalloc. */
struct dwarf_stack_value *stack;
@@ -250,11 +253,6 @@ struct dwarf_expr_piece
ULONGEST offset;
};
-struct dwarf_expr_context *new_dwarf_expr_context (void);
-void free_dwarf_expr_context (struct dwarf_expr_context *ctx);
-struct cleanup *
- make_cleanup_free_dwarf_expr_context (struct dwarf_expr_context *ctx);
-
void dwarf_expr_push_address (struct dwarf_expr_context *ctx,
CORE_ADDR value,
int in_stack_memory);