From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17643 invoked by alias); 11 Jan 2010 21:29:18 -0000 Received: (qmail 17631 invoked by uid 22791); 11 Jan 2010 21:29:17 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 11 Jan 2010 21:29:14 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o0BLSonF014753 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 11 Jan 2010 16:28:50 -0500 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id o0BLSn5D016244; Mon, 11 Jan 2010 16:28:49 -0500 Received: from opsy.redhat.com (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id o0BLSmbB004552; Mon, 11 Jan 2010 16:28:49 -0500 Received: by opsy.redhat.com (Postfix, from userid 500) id 4005F378187; Mon, 11 Jan 2010 14:28:48 -0700 (MST) From: Tom Tromey To: Tristan Gingold Cc: gdb-patches@sourceware.org, kevinb@redhat.com Subject: Re: [RFA] Fix has_section_at_zero for separate debug files References: <20100107130918.GA11037@chinon.act-europe.fr> Reply-To: tromey@redhat.com Date: Mon, 11 Jan 2010 21:29:00 -0000 In-Reply-To: <20100107130918.GA11037@chinon.act-europe.fr> (Tristan Gingold's message of "Thu, 7 Jan 2010 14:09:18 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii 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: 2010-01/txt/msg00277.txt.bz2 >>>>> "Tristan" == Tristan Gingold writes: Tristan> this patch reconsiders the approach taken in Tristan> http://sourceware.org/ml/gdb-patches/2009-06/msg00116.html Tristan> The new problem is that has_section_at_zero is now wrongly Tristan> cleared. This happens when the separate debug file is a Tristan> relocatable file (such as on Darwin) which may have a function Tristan> at address 0. If its backlink (ie the executable) has no Tristan> section at 0 (which is the rule), one or more symbols disappear Tristan> in the symtab. This seems strange to me. My mental model is that the separate debug objfile describes the parent objfile. To me this implies that on Darwin you ought to relocate the separate debug objects. Tristan> Because a separate debug file may be completely unrelated (in Tristan> terms of mapping) from its backlink, we shouldn't try to copy Tristan> the has_section_at_zero. Instead, we also consider SEC_ALLOC Tristan> sections to set has_section_at_zero. This makes sense because Tristan> you may perfectly have the bss at zero. This also seems a little weird, given that has_section_at_zero is only used to determine whether PC ranges are valid in some situations. Tristan> No regression on GNU Linux i386. I wonder whether this code path is tested there. I don't know. Tom