From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15749 invoked by alias); 3 Jul 2013 11:10:36 -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 15699 invoked by uid 89); 3 Jul 2013 11:10:30 -0000 X-Spam-SWARE-Status: No, score=-7.0 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.1 Received: from mga14.intel.com (HELO mga14.intel.com) (143.182.124.37) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Wed, 03 Jul 2013 11:10:20 +0000 Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga102.ch.intel.com with ESMTP; 03 Jul 2013 04:10:17 -0700 X-ExtLoop1: 1 Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by azsmga001.ch.intel.com with ESMTP; 03 Jul 2013 04:09:59 -0700 Received: from irsmsx104.ger.corp.intel.com ([169.254.5.127]) by IRSMSX103.ger.corp.intel.com ([169.254.3.35]) with mapi id 14.03.0123.003; Wed, 3 Jul 2013 12:09:59 +0100 From: "Metzger, Markus T" To: Mark Kettenis CC: "jan.kratochvil@redhat.com" , "gdb-patches@sourceware.org" Subject: RE: [patch v4 01/24] gdbarch: add instruction predicate methods Date: Wed, 03 Jul 2013 11:10:00 -0000 Message-ID: References: <1372842874-28951-1-git-send-email-markus.t.metzger@intel.com> <1372842874-28951-2-git-send-email-markus.t.metzger@intel.com> <201307030948.r639muk8027843@glazunov.sibelius.xs4all.nl> In-Reply-To: <201307030948.r639muk8027843@glazunov.sibelius.xs4all.nl> Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2013-07/txt/msg00137.txt.bz2 > -----Original Message----- > From: gdb-patches-owner@sourceware.org [mailto:gdb-patches-owner@sourcewa= re.org] On Behalf Of Mark Kettenis > Sent: Wednesday, July 03, 2013 11:49 AM > > Add new methods to gdbarch for analyzing the instruction at a given add= ress. > > Implement those methods for i386 and amd64 architectures. >=20 > This is all really amd64/i386-centric. On a more abstract level, what > is the difference between "call", "ret" and "jump"? Call is calling into a function, ret is returning from a function back to i= ts caller, and jump is an intra-function branch. Call and return are language concepts so they should be OK. Jump is already a generalization (note the extra 'u'), but we may change this to 'goto' or = some other term if you like. At the moment, I assume that there is a single instruction for each. If it= turns out that there are architectures that do this in more than one instruction,= we will need to extend the algorithm in record-btrace.c. At the moment, the o= nly architecture that supports branch tracing is x86 so this suffices. Regards, Markus. Intel GmbH Dornacher Strasse 1 85622 Feldkirchen/Muenchen, Deutschland Sitz der Gesellschaft: Feldkirchen bei Muenchen Geschaeftsfuehrer: Christian Lamprechter, Hannes Schwaderer, Douglas Lusk Registergericht: Muenchen HRB 47456 Ust.-IdNr./VAT Registration No.: DE129385895 Citibank Frankfurt a.M. (BLZ 502 109 00) 600119052