From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4231 invoked by alias); 23 Sep 2014 18:34:48 -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 4218 invoked by uid 89); 23 Sep 2014 18:34:47 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.0 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 X-HELO: relay1.mentorg.com Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 23 Sep 2014 18:34:46 +0000 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=SVR-IES-FEM-01.mgc.mentorg.com) by relay1.mentorg.com with esmtp id 1XWUvC-0004rK-LF from Maciej_Rozycki@mentor.com ; Tue, 23 Sep 2014 11:34:42 -0700 Received: from localhost (137.202.0.76) by SVR-IES-FEM-01.mgc.mentorg.com (137.202.0.104) with Microsoft SMTP Server (TLS) id 14.3.181.6; Tue, 23 Sep 2014 19:34:41 +0100 Date: Tue, 23 Sep 2014 18:34:00 -0000 From: "Maciej W. Rozycki" To: Pedro Alves CC: , Luis Machado Subject: Re: [PATCH] Avoid software breakpoint's instruction shadow inconsistency In-Reply-To: Message-ID: References: <5421B1B3.7010106@redhat.com> User-Agent: Alpine 1.10 (DEB 962 2008-03-14) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" X-SW-Source: 2014-09/txt/msg00704.txt.bz2 On Tue, 23 Sep 2014, Maciej W. Rozycki wrote: > > > This is also important for places > > > like `find_single_step_breakpoint' where a breakpoint's address is > > > compared to the raw value of $pc. > > > > > > > AFAICS, insert_single_step_breakpoint also doesn't do > > gdbarch_breakpoint_from_pc, so there doesn't seem to be a mismatch. > > The problem is `find_single_step_breakpoint' is called in the ordinary > breakpoint removal path too, so that if a single-step breakpoint is placed > at the same address, it is retained. I saw this place do bad things in > testing my change before I adjusted it to use `reqstd_address'. And this change alone is I believe what is responsible for the removal of the following regressions: FAIL: gdb.base/sss-bp-on-user-bp-2.exp: before/after disassembly matches FAIL: gdb.base/sss-bp-on-user-bp-2.exp: stepi_del_break in little-endian MIPS16 multilib testing and this regression: FAIL: gdb.base/sss-bp-on-user-bp-2.exp: before/after disassembly matches in big-endian MIPS16 multilib testing with this patch in place. Maciej