X-Git-Url: http://drtracing.org/?a=blobdiff_plain;ds=sidebyside;f=gdb%2Fdwarf2expr.h;h=3d7ca002c5e7c6e9a2f1a67d7deeaacba245e269;hb=a3405d124e1388b613a35af49f19f0cc1b8d959d;hp=1b890dcf5704cc91c571db03d17300a8e9bb3e79;hpb=8b9737bf8cca3d3f999bb48a27019933f2138c2c;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/dwarf2expr.h b/gdb/dwarf2expr.h index 1b890dcf57..3d7ca002c5 100644 --- a/gdb/dwarf2expr.h +++ b/gdb/dwarf2expr.h @@ -1,7 +1,6 @@ /* DWARF 2 Expression Evaluator. - Copyright (C) 2001-2003, 2005, 2007-2012 Free Software Foundation, - Inc. + Copyright (C) 2001-2016 Free Software Foundation, Inc. Contributed by Daniel Berlin . @@ -32,8 +31,15 @@ struct dwarf_expr_context; struct dwarf_expr_context_funcs { - /* Return the value of register number REGNUM. */ - CORE_ADDR (*read_reg) (void *baton, int regnum); + /* Return the value of register number REGNUM (a DWARF register number), + read as an address. */ + CORE_ADDR (*read_addr_from_reg) (void *baton, int regnum); + + /* Return a value of type TYPE, stored in register number REGNUM + of the frame associated to the given BATON. + + REGNUM is a DWARF register number. */ + struct value *(*get_reg_value) (void *baton, struct type *type, int regnum); /* Read LENGTH bytes at ADDR into BUF. */ void (*read_mem) (void *baton, gdb_byte *buf, CORE_ADDR addr, size_t length); @@ -78,12 +84,8 @@ struct dwarf_expr_context_funcs This can throw an exception if the index is out of range. */ CORE_ADDR (*get_addr_index) (void *baton, unsigned int index); -#if 0 - /* Not yet implemented. */ - /* Return the `object address' for DW_OP_push_object_address. */ CORE_ADDR (*get_object_address) (void *baton); -#endif }; /* The location of a value. */