From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6053 invoked by alias); 29 Nov 2007 18:46:31 -0000 Received: (qmail 6045 invoked by uid 22791); 29 Nov 2007 18:46:30 -0000 X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (65.74.133.4) by sourceware.org (qpsmtpd/0.31) with ESMTP; Thu, 29 Nov 2007 18:46:26 +0000 Received: (qmail 1838 invoked from network); 29 Nov 2007 18:46:24 -0000 Received: from unknown (HELO 172.16.unknown.plus.ru) (vladimir@127.0.0.2) by mail.codesourcery.com with ESMTPA; 29 Nov 2007 18:46:24 -0000 From: Vladimir Prus To: "Ulrich Weigand" Subject: Re: [RFA] Stop infrun from tracking breakpoint insertion status. Date: Thu, 29 Nov 2007 18:46:00 -0000 User-Agent: KMail/1.9.6 Cc: gdb-patches@sources.redhat.com References: <200711282224.lASMOb40006226@d12av02.megacenter.de.ibm.com> In-Reply-To: <200711282224.lASMOb40006226@d12av02.megacenter.de.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200711292146.21145.vladimir@codesourcery.com> 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: 2007-11/txt/msg00550.txt.bz2 On Thursday 29 November 2007 01:24:37 Ulrich Weigand wrote: > Vladimir Prus wrote: > > > The second problem was that breakpoint_inserted_here_p checks for > > both ordinary breakpoints and single step breakpoints (which don't > > go on bp_location_chain). In most cases, it does not matter, but > > in one place the code tries to figure if we're stopped on a single > > step breakpoint or an ordinary one, and surely, breakpoint_inserted_here_p > > returning 1 for both cases was not good. > > > > The attached revision of the patch introduces a separate > > regular_breakpoint_inserted_here_p function. No regressions on > > either x86 or arm-linux. OK? > > I've tested this on powerpc-ibm-aix5.3.0.0 as well, no regressions. > > > * breakpoint.h (regular_breakpoint_inserted_here_p): New > > declaration. > > * breakpoint.c (regular_breakpoint_inserted_here_p): New. > > (breakpoint_inserted_here_p): Use > > regular_breakpoint_inserted_here_p. > > * infrun.c (breakpoints_inserted): Remove. > > (resume): Don't check for breakpoints_inserted before > > remove_hw_watchpoints. Use breakpoint_inserted_here_p. > > (proceed, init_wait_for_inferior): Don't set breakpoints_inserted. > > (handle_inferior_event): Don't use breakpoints_inserted. > > Use breakpoints_meant_to_be_inserted and > > breakpoints_inserted_here_p. > > (insert_step_resume_breakpoint_at_sal, keep_going): Use > > breakpoints_meant_to_be_inserted. Don't set breakpoints_inserted. > > (normal_stop): Don't check for breakpoints_inserted. Don't > > set breakpoints_inserted. > > (keep_going): Don't check for breakpoints_inserted. > > (insert_step_resume_breakpoint_at_sal): Don't insert > > breakpoints > > This is OK. > > > /* Remove breakpoints, SOLIB_ADD might adjust > > breakpoint addresses via breakpoint_re_set. */ > > - breakpoints_were_inserted = breakpoints_inserted; > > "breakpoints_were_inserted" is now unused, could you please remove > the variable definition as well? I've made this adjustment and checked in. Thanks a lot for review, testing, and the suggested improvements! - Volodya