From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27018 invoked by alias); 22 Jul 2013 06:38:56 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 26989 invoked by uid 89); 22 Jul 2013 06:38:56 -0000 X-Spam-SWARE-Status: No, score=-5.9 required=5.0 tests=AWL,BAYES_00,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL,RDNS_NONE,SPF_HELO_PASS,SPF_PASS,TW_EG autolearn=no version=3.3.1 Received: from Unknown (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Mon, 22 Jul 2013 06:38:55 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r6M6clw4013484 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Mon, 22 Jul 2013 02:38:47 -0400 Received: from host2.jankratochvil.net (ovpn-116-19.ams2.redhat.com [10.36.116.19]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r6M6chw4007009 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Mon, 22 Jul 2013 02:38:45 -0400 Date: Mon, 22 Jul 2013 06:38:00 -0000 From: Jan Kratochvil To: Terry Guo Cc: Hui Zhu , gdb@sourceware.org Subject: Re: Reverse debugging for arm baremetal targets? Message-ID: <20130722063842.GA24373@host2.jankratochvil.net> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes X-SW-Source: 2013-07/txt/msg00071.txt.bz2 On Mon, 22 Jul 2013 08:10:33 +0200, Terry Guo wrote: > Thanks for your reply. I did some tests and it seems to me that > reverse debugging doesn't work for baremetal targets. It looks so: $ grep ' set_gdbarch_process_record ' gdb/* amd64-linux-tdep.c: set_gdbarch_process_record (gdbarch, i386_process_record); arm-linux-tdep.c: set_gdbarch_process_record (gdbarch, arm_process_record); i386-linux-tdep.c: set_gdbarch_process_record (gdbarch, i386_process_record); moxie-tdep.c: set_gdbarch_process_record (gdbarch, moxie_process_record); But the OS dependent part seems to be missing there: arm-tdep.h: /* Parse swi insn args, sycall record. */ int (*arm_swi_record) (struct regcache *regcache); - which does not seem to be set anywhere So the current set_gdbarch_process_record initialization could be possibly moved to arm-tdep.c. But I did not play more with it. Jan