summaryrefslogtreecommitdiff
path: root/gdb/dwarf2expr.h
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2008-09-05 11:40:53 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2008-09-05 11:40:53 +0000
commit366f29a7c164719f454e92f2bfeecc359fbe8dfd (patch)
tree5c3a77b31c524b615de64ce4f0dfa3b405b2c767 /gdb/dwarf2expr.h
parent9cfe46c3ef9353bba563b077281cb059e503f5ae (diff)
downloadgdb-366f29a7c164719f454e92f2bfeecc359fbe8dfd.tar.gz
* dwarf2expr.h (dwarf2_read_address): Add gdbarch argument.
* dwarf2expr.c (dwarf2_read_address): Add gdbarch argument. Call gdbarch_integer_to_address directly instead of converting to value and back. Update comment. (execute_stack_op): Update call site. * dwarf2loc.c (find_location_expression): Likewise. (locexpr_describe_location): Update * dwarf2expr.h (struct dwarf_expr_context): Add gdbarch member. * dwarf2-frame.c (execute_stack_op): Initialize ctx->gdbarch. * dwarf2loc. (dwarf2_evaluate_loc_desc): Likewise. (dwarf2_loc_desc_needs_frame): Likewise.
Diffstat (limited to 'gdb/dwarf2expr.h')
-rw-r--r--gdb/dwarf2expr.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/gdb/dwarf2expr.h b/gdb/dwarf2expr.h
index 463c45261d6..5d9581ca968 100644
--- a/gdb/dwarf2expr.h
+++ b/gdb/dwarf2expr.h
@@ -34,6 +34,9 @@ struct dwarf_expr_context
number of elements allocated to the stack. */
int stack_len, stack_allocated;
+ /* Target architecture to use for address operations. */
+ struct gdbarch *gdbarch;
+
/* Target address size in bytes. */
int addr_size;
@@ -138,7 +141,7 @@ CORE_ADDR dwarf_expr_fetch (struct dwarf_expr_context *ctx, int n);
gdb_byte *read_uleb128 (gdb_byte *buf, gdb_byte *buf_end, ULONGEST * r);
gdb_byte *read_sleb128 (gdb_byte *buf, gdb_byte *buf_end, LONGEST * r);
-CORE_ADDR dwarf2_read_address (gdb_byte *buf, gdb_byte *buf_end,
- int addr_size);
+CORE_ADDR dwarf2_read_address (struct gdbarch *gdbarch, gdb_byte *buf,
+ gdb_byte *buf_end, int addr_size);
#endif /* dwarf2expr.h */