From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 81081 invoked by alias); 23 Aug 2018 22:41:43 -0000 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 Received: (qmail 81069 invoked by uid 89); 23 Aug 2018 22:41:42 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:2473, 84550 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 23 Aug 2018 22:41:41 +0000 Received: from smtp.corp.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 8A29C80F8E; Thu, 23 Aug 2018 22:41:39 +0000 (UTC) Received: from pinnacle.lan (ovpn-116-27.phx2.redhat.com [10.3.116.27]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 4940230912F4; Thu, 23 Aug 2018 22:41:39 +0000 (UTC) Date: Thu, 23 Aug 2018 22:41:00 -0000 From: Kevin Buettner To: gdb-patches@sourceware.org Cc: Simon Marchi , Joel Brobecker Subject: Re: GDB 8.2 release 2018-08-21 status update Message-ID: <20180823154138.66be5572@pinnacle.lan> In-Reply-To: <0e24ffbeb9706f75c53d3fdcfea3decb@polymtl.ca> References: <20180821175136.GA3365@adacore.com> <0e24ffbeb9706f75c53d3fdcfea3decb@polymtl.ca> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2018-08/txt/msg00585.txt.bz2 On Thu, 23 Aug 2018 14:36:54 -0400 Simon Marchi wrote: > On 2018-08-21 13:51, Joel Brobecker wrote: > > * [KevinB] PR gdb/23021 > > Setting breakpoints with -freorder-blocks-and-partition > > https://sourceware.org/bugzilla/show_bug.cgi?id=23021 > > > > Identified as needed in the previous release, but couldn't do it > > in time. We should be very close, now: > > [v3] > > https://sourceware.org/ml/gdb-patches/2018-08/msg00467.html > > > > I'm wondering how reasonable it's going to be to backport > > those changes onto the branch, though... Any thoughts on that? > > Kevin? Simon? > > The changeset does indeed look scary :). But I think Kevin was careful > to keep the existing behaviour for contiguous blocks. > > Patches 1 and 2 look harmless. > > Patches 3 and 4 mostly added some branches for the contiguous and the > non-contiguous case, where the contiguous case keeps the former > behaviour. If you have an executable with only contiguous blocks, it > *should* therefore work the same way as before. If you have an > executable with non-contiguous blocks, well it would be broken with GDB > 8.1, so anything is an improvement. > > Patch 5 changes BLOCK_START for BLOCK_ENTRY_PC, which is supposed to be > the same for contiguous blocks, so again no changes expected there. > > I'm not sure about the impact of patch 6. For contiguous blocks, there's no change in behavior for patch 6 either. I.e. find_function_entry_range_from_pc provides the same answer as find_pc_partial_function when invoked on a function occupying a contiguous block. > > Patch 7 modifies the block range data, which is only used in the > non-contiguous branches. So again, no impact on existing > contiguous-only executables. I agree with the rest of your analysis. > So from my point of view, it would be fine to include it in 8.2. I'm > just wondering though why this was considered as a blocker for 8.2 in > the first place. It's not really a regression, it's more like a new > feature. Was it to make sure we get the feature to users faster, before > the new gcc that emits code like this by default starts to spread too > much? According to Thomas Koenig, from GCC bug 84550: With gdb 8.0.1, stepping through functions after breakpoints is often broken. This makes it hard to debug gcc itself. The non-contiguous address ranges patches _might_ make it easier for gcc developers to debug gcc. Kevin