From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21083 invoked by alias); 14 Aug 2004 19:34:06 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 21076 invoked from network); 14 Aug 2004 19:34:05 -0000 Received: from unknown (HELO walton.kettenis.dyndns.org) (213.93.77.109) by sourceware.org with SMTP; 14 Aug 2004 19:34:05 -0000 Received: from elgar.kettenis.dyndns.org (elgar.kettenis.dyndns.org [192.168.0.2]) by walton.kettenis.dyndns.org (8.12.6p3/8.12.6) with ESMTP id i7EJY4XS001307 for ; Sat, 14 Aug 2004 21:34:04 +0200 (CEST) (envelope-from kettenis@elgar.kettenis.dyndns.org) Received: from elgar.kettenis.dyndns.org (localhost [127.0.0.1]) by elgar.kettenis.dyndns.org (8.12.6p3/8.12.6) with ESMTP id i7EJY4Kg001087 for ; Sat, 14 Aug 2004 21:34:04 +0200 (CEST) (envelope-from kettenis@elgar.kettenis.dyndns.org) Received: (from kettenis@localhost) by elgar.kettenis.dyndns.org (8.12.6p3/8.12.6/Submit) id i7EJY4mc001084; Sat, 14 Aug 2004 21:34:04 +0200 (CEST) Date: Sat, 14 Aug 2004 19:34:00 -0000 Message-Id: <200408141934.i7EJY4mc001084@elgar.kettenis.dyndns.org> From: Mark Kettenis To: gdb@sources.redhat.com Subject: non-decr_pc_after_break i386 targets X-SW-Source: 2004-08/txt/msg00212.txt.bz2 While reading the Solaris proc(4) man page I noticed the PR_BPTADJ flag. If this flag is set, Solaris x86 "will adjust the program counter back to location of the breakpointed instructions when the lwp stops on a breakpoint". The man page explicitly says that on SPARC this is a no-op. Using this flag makes it possible to turn i386-*-solaris2* into an architecture where decr_pc_after_break is zero. This would have remove some of the problems with breakpoints in signal trampolines on Solaris x86. So I think we should do that. However, this also reveals a flaw in the way we handle decr_pc_after_break. Currently it's part of the architecture vector, which essentially means that we consider it part of the ISA. However, the above shows that it also depends on the target interface. So it seems we should make it possible for the target vector to override the default set by the architecture vector. To people agree with this analysis? Mark