From 87808bd699575a850139a1f916512ab7a47fd496 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Tue, 24 Aug 2004 21:01:49 +0000 Subject: * 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. --- gdb/ChangeLog | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'gdb/ChangeLog') 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 + * 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. -- cgit v1.1