From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31482 invoked by alias); 14 Nov 2005 22:42:04 -0000 Received: (qmail 31474 invoked by uid 22791); 14 Nov 2005 22:42:02 -0000 Received: from w099.z064220152.sjc-ca.dsl.cnc.net (HELO duck.specifix.com) (64.220.152.99) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Mon, 14 Nov 2005 22:42:02 +0000 Received: from [127.0.0.1] (duck.corp.specifix.com [192.168.1.1]) by duck.specifix.com (Postfix) with ESMTP id 37258415A; Mon, 14 Nov 2005 14:42:01 -0800 (PST) Subject: Re: [patch] fix dwarf2 missing frame base problem From: James E Wilson To: Daniel Jacobowitz Cc: gdb-patches@sourceware.org In-Reply-To: <20051113182753.GC3599@nevyn.them.org> References: <1131044378.23819.32.camel@aretha.corp.specifix.com> <1131745786.12420.19.camel@aretha.corp.specifix.com> <20051113182753.GC3599@nevyn.them.org> Content-Type: multipart/mixed; boundary="=-PjWgwYOs/awjq9m4n9f4" Message-Id: <1132007198.9830.0.camel@aretha.corp.specifix.com> Mime-Version: 1.0 Date: Tue, 15 Nov 2005 08:52:00 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2005-11/txt/msg00198.txt.bz2 --=-PjWgwYOs/awjq9m4n9f4 Content-Type: text/plain Content-Transfer-Encoding: 7bit Content-length: 322 On Sun, 2005-11-13 at 10:27, Daniel Jacobowitz wrote: > This is OK for both head and branch. Could you please use a temporary > variable though? You're out to 82 columns. OK, thanks. Here is the revised and retested patch that I added to the head and branch. -- Jim Wilson, GNU Tools Support, http://www.specifix.com --=-PjWgwYOs/awjq9m4n9f4 Content-Disposition: attachment; filename=patch.frame.address Content-Type: text/plain; name=patch.frame.address; charset=utf-8 Content-Transfer-Encoding: 7bit Content-length: 1716 2005-11-14 James E Wilson PR 2024 * dwarf2loc.c (dwarf_expr_frame_base): Use get_frame_address_in_block instead of get_frame_pc. (loclist_read_variable): Likewise. Index: dwarf2loc.c =================================================================== RCS file: /cvs/src/src/gdb/dwarf2loc.c,v retrieving revision 1.29 diff -p -p -r1.29 dwarf2loc.c *** dwarf2loc.c 12 Jul 2005 13:06:54 -0000 1.29 --- dwarf2loc.c 14 Nov 2005 20:42:17 -0000 *************** dwarf_expr_frame_base (void *baton, gdb_ *** 164,172 **** if (SYMBOL_OPS (framefunc) == &dwarf2_loclist_funcs) { struct dwarf2_loclist_baton *symbaton; symbaton = SYMBOL_LOCATION_BATON (framefunc); *start = find_location_expression (symbaton, length, ! get_frame_pc (debaton->frame)); } else { --- 164,174 ---- if (SYMBOL_OPS (framefunc) == &dwarf2_loclist_funcs) { struct dwarf2_loclist_baton *symbaton; + struct frame_info *frame = debaton->frame; + symbaton = SYMBOL_LOCATION_BATON (framefunc); *start = find_location_expression (symbaton, length, ! get_frame_address_in_block (frame)); } else { *************** loclist_read_variable (struct symbol *sy *** 580,586 **** size_t size; data = find_location_expression (dlbaton, &size, ! frame ? get_frame_pc (frame) : 0); if (data == NULL) { val = allocate_value (SYMBOL_TYPE (symbol)); --- 582,589 ---- size_t size; data = find_location_expression (dlbaton, &size, ! frame ? get_frame_address_in_block (frame) ! : 0); if (data == NULL) { val = allocate_value (SYMBOL_TYPE (symbol)); --=-PjWgwYOs/awjq9m4n9f4--