From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 30275 invoked by alias); 27 Jul 2009 20:55:11 -0000 Received: (qmail 30257 invoked by uid 22791); 27 Jul 2009 20:55:09 -0000 X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL,BAYES_00,J_CHICKENPOX_42 X-Spam-Check-By: sourceware.org Received: from qnxmail.qnx.com (HELO qnxmail.qnx.com) (209.226.137.76) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 27 Jul 2009 20:55:01 +0000 Received: from Nebula.ott.qnx.com (nebula.ott.qnx.com [10.42.3.30]) by hub.ott.qnx.com (8.9.3/8.9.3) with ESMTP id QAA30585; Mon, 27 Jul 2009 16:54:53 -0400 Received: from [127.0.0.1] ([10.42.161.192]) by Nebula.ott.qnx.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 27 Jul 2009 16:54:59 -0400 Message-ID: <4A6E141E.1080006@qnx.com> Date: Tue, 28 Jul 2009 00:09:00 -0000 From: Aleksandar Ristovski User-Agent: Thunderbird 2.0.0.22 (Windows/20090605) MIME-Version: 1.0 To: Pedro Alves CC: gdb-patches@sourceware.org Subject: Re: [patch] nto-tdep.c - adjust addr_low addr_high References: <200907241425.45805.pedro@codesourcery.com> In-Reply-To: <200907241425.45805.pedro@codesourcery.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2009-07/txt/msg00665.txt.bz2 Pedro Alves wrote: > On Wednesday 08 July 2009 15:26:55, Aleksandar Ristovski wrote: > >> This adjusts so->addr_low and so->addr_high for proper "info >> sahredlibrary" output. > >> Index: gdb/nto-tdep.c >> =================================================================== >> RCS file: /cvs/src/src/gdb/nto-tdep.c,v >> retrieving revision 1.34 >> @@ -315,6 +316,10 @@ nto_relocate_section_addresses (struct s >> >> sec->addr = nto_truncate_ptr (sec->addr + LM_ADDR (so) - vaddr); >> sec->endaddr = nto_truncate_ptr (sec->endaddr + LM_ADDR (so) - vaddr); >> + if (so->addr_low == 0) >> + so->addr_low = LM_ADDR (so); > > Isn't LM_ADDR an offset, not an absolute address? In our case, it's absolute address of .text (that is why we subtract vaddr as read from phdr). > >> + if (so->addr_high < sec->endaddr) >> + so->addr_high = sec->endaddr; >> } >> >> /* This is cheating a bit because our linker code is in libc.so. If we > Thanks, -- Aleksandar Ristovski QNX Software Systems