aboutsummaryrefslogtreecommitdiff
path: root/gdb/ChangeLog
diff options
context:
space:
mode:
authorJim Blandy <jimb@codesourcery.com>2004-08-24 21:01:49 +0000
committerJim Blandy <jimb@codesourcery.com>2004-08-24 21:01:49 +0000
commit87808bd699575a850139a1f916512ab7a47fd496 (patch)
tree16b075db667922d055eb918d2b4eaa76ffb51b14 /gdb/ChangeLog
parent8d2c00cb73ae9b3d1e5d7317241dc02e575b7f1b (diff)
downloadgdb-87808bd699575a850139a1f916512ab7a47fd496.zip
gdb-87808bd699575a850139a1f916512ab7a47fd496.tar.gz
gdb-87808bd699575a850139a1f916512ab7a47fd496.tar.bz2
* dwarf2expr.h (struct dwarf_expr_context): New members
'num_pieces' and 'pieces', for returning the result of an expression that uses DW_OP_piece. (struct dwarf_expr_piece): New struct type. * dwarf2expr.c (new_dwarf_expr_context): Initialize num_pieces and pieces. (free_dwarf_expr_context): Free pieces, if any. (add_piece): New function. (execute_stack_op): Implement DW_OP_piece. * dwarf2loc.c (dwarf2_evaluate_loc_desc): If the result of the expression is a list of pieces, print an error message. (dwarf2_loc_desc_needs_frame): If the expression yields pieces, and any piece is in a register, then we need a frame.
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r--gdb/ChangeLog14
1 files changed, 14 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 219ed9a..66c08d2 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,19 @@
2004-08-24 Jim Blandy <jimb@redhat.com>
+ * dwarf2expr.h (struct dwarf_expr_context): New members
+ 'num_pieces' and 'pieces', for returning the result of an
+ expression that uses DW_OP_piece.
+ (struct dwarf_expr_piece): New struct type.
+ * dwarf2expr.c (new_dwarf_expr_context): Initialize num_pieces and
+ pieces.
+ (free_dwarf_expr_context): Free pieces, if any.
+ (add_piece): New function.
+ (execute_stack_op): Implement DW_OP_piece.
+ * dwarf2loc.c (dwarf2_evaluate_loc_desc): If the result of the
+ expression is a list of pieces, print an error message.
+ (dwarf2_loc_desc_needs_frame): If the expression yields
+ pieces, and any piece is in a register, then we need a frame.
+
* dwarf2loc.c (dwarf2_evaluate_loc_desc): Wait to fetch the top of
the stack until we've decided what sort of result the evaluation
has produced. Use separate variables, with more specific names.