From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26063 invoked by alias); 23 Aug 2004 18:42:07 -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 26056 invoked from network); 23 Aug 2004 18:42:06 -0000 Received: from unknown (HELO avtrex.com) (216.102.217.178) by sourceware.org with SMTP; 23 Aug 2004 18:42:06 -0000 Received: from avtrex.com ([192.168.0.111] RDNS failed) by avtrex.com with Microsoft SMTPSVC(5.0.2195.6713); Mon, 23 Aug 2004 11:38:36 -0700 Message-ID: <412A39AF.1080103@avtrex.com> Date: Mon, 23 Aug 2004 18:42:00 -0000 From: David Daney User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.1) Gecko/20031030 MIME-Version: 1.0 To: Andrew Cagney CC: gdb@sources.redhat.com Subject: Re: Unable to step over (n and ni) on mipsel-linux... References: <412649F4.9040002@avtrex.com> <412A25B1.7080308@gnu.org> <412A30E5.9080809@avtrex.com> <412A3672.5040904@gnu.org> In-Reply-To: <412A3672.5040904@gnu.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 23 Aug 2004 18:38:36.0139 (UTC) FILETIME=[665B53B0:01C48940] X-SW-Source: 2004-08/txt/msg00288.txt.bz2 Andrew Cagney wrote: >> >>Currently GDB examines the next instruction to see if it is a branch (or >> jal or jalr..) to see where to place a temporary breakpoint for single >>stepping. > > >>Instead of stepping into a function and checking to see if we are in a >>different frame (settting a breakpoint at the return address location), >>why not set the breakpoint at the return location before making the >>function call? > > > That would mean examining every instruction to determine if it is a call > - effectively s/w single step. GDB tries to do avoid doing that so that > single-step is faster. > For my configuration, for some reason it is already doing this. Thus my comment. If we are doing s/w single step, we would not have to examine the stack frames. Could there are some configuration problems? > >>By compiler dependant, do you mean the compiler GDB was built with, or >>the one that compiled the target code? > > > For you mipsel-linux-gcc (the one that compiled the target code). This implies that if I write assembly language I cannot expect GDB's ni instruction to work. I am doing testing with at least three different compiler versions. GDB 5.3 seems to work well except for crashing when I don't use -fno-var-tracking. GDB 6.x seems to be a bit of a down-grade. David Daney.