From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10916 invoked by alias); 14 Feb 2003 21:09:45 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 10843 invoked from network); 14 Feb 2003 21:09:45 -0000 Received: from unknown (HELO dberlin.org) (69.3.5.6) by 172.16.49.205 with SMTP; 14 Feb 2003 21:09:45 -0000 Received: from [192.168.1.2] (HELO dberlin.org) by dberlin.org (CommuniGate Pro SMTP 4.0.5) with ESMTP-TLS id 2760204; Fri, 14 Feb 2003 16:09:46 -0500 Date: Fri, 14 Feb 2003 21:09:00 -0000 From: Daniel Berlin To: Jakub Jelinek cc: Michal Ludvig , gdb , "" Subject: Re: Reference to .debug_loc In-Reply-To: <20030214213521.J1717@sunsite.ms.mff.cuni.cz> Message-ID: References: <20030214152619.GD30416@nevyn.them.org> <20030214195124.GA11479@nevyn.them.org> <20030214213521.J1717@sunsite.ms.mff.cuni.cz> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-SW-Source: 2003-02/txt/msg00248.txt.bz2 On Fri, 14 Feb 2003, Jakub Jelinek wrote: > On Fri, Feb 14, 2003 at 02:51:24PM -0500, Daniel Jacobowitz wrote: > > > >>Or is there another way? > > > > > > > >At a guess it should be like DW_AT_ranges: > > > > .long .Ldebug_ranges0+0x0 # DW_AT_ranges > > > > > > > >I.E. dw2_asm_output_offset, rather than dw2_asm_output_delta, in GCC. > > > > > > > > > > It's supposed to be the offset from the beginning of the debug_loc > > > section. > > > Will this do that? > > > > I think so. The result will be something like .Ldebug_ranges0 + > > (.LLST0-.Ldebug_loc0). If the assembler won't take that then we'll > > have to track addresses for loclists the same as we do for rangelists. > > Why simple .long .LLST0 is not sufficient (@secrel(.LLST0) on IA-64)? > It is not the only place where gcc relies on VMA of debugging sections > to be 0 if the architecture lacks section relative relocations. That seems to work. Michael, try this: Index: dwarf2out.c =================================================================== RCS file: /cvs/gcc/gcc/gcc/dwarf2out.c,v retrieving revision 1.382.2.8 diff -u -3 -p -r1.382.2.8 dwarf2out.c --- dwarf2out.c 8 Feb 2003 19:43:32 -0000 1.382.2.8 +++ dwarf2out.c 14 Feb 2003 21:09:27 -0000 @@ -6924,8 +6924,7 @@ output_die (die) if (sym == 0) abort (); - dw2_asm_output_delta (DWARF_OFFSET_SIZE, sym, - loc_section_label, "%s", name); + dw2_asm_output_offset (DWARF_OFFSET_SIZE, sym, "%s", name); } break;