From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 92964 invoked by alias); 17 Aug 2015 07:16:00 -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 92950 invoked by uid 89); 17 Aug 2015 07:15:59 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.9 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mga01.intel.com Received: from mga01.intel.com (HELO mga01.intel.com) (192.55.52.88) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 17 Aug 2015 07:15:57 +0000 Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga101.fm.intel.com with ESMTP; 17 Aug 2015 00:15:40 -0700 X-ExtLoop1: 1 Received: from irsmsx154.ger.corp.intel.com ([163.33.192.96]) by orsmga002.jf.intel.com with ESMTP; 17 Aug 2015 00:15:38 -0700 Received: from irsmsx104.ger.corp.intel.com ([169.254.5.131]) by IRSMSX154.ger.corp.intel.com ([169.254.12.253]) with mapi id 14.03.0224.002; Mon, 17 Aug 2015 08:15:37 +0100 From: "Metzger, Markus T" To: Eli Zaretskii , Doug Evans CC: "palves@redhat.com" , "gdb-patches@sourceware.org" Subject: RE: [rfc] btrace: change record instruction-history /m Date: Mon, 17 Aug 2015 07:16:00 -0000 Message-ID: References: <1439552272-6256-1-git-send-email-markus.t.metzger@intel.com> <83bneanfvb.fsf@gnu.org> <834mk1obll.fsf@gnu.org> In-Reply-To: <834mk1obll.fsf@gnu.org> Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2015-08/txt/msg00414.txt.bz2 > -----Original Message----- > From: Eli Zaretskii [mailto:eliz@gnu.org] > Sent: Friday, August 14, 2015 10:32 PM > To: Doug Evans > Cc: Metzger, Markus T; palves@redhat.com; gdb-patches@sourceware.org > Subject: Re: [rfc] btrace: change record instruction-history /m >=20 > > From: Doug Evans > > Date: Fri, 14 Aug 2015 10:06:15 -0700 > > Cc: Markus Metzger , Pedro Alves > , > > gdb-patches > > > > On Fri, Aug 14, 2015 at 6:45 AM, Eli Zaretskii wrote: > > >> From: Markus Metzger > > >> Cc: gdb-patches@sourceware.org, dje@google.com > > >> Date: Fri, 14 Aug 2015 13:37:52 +0200 > > >> > > >> Change record instruction-history /m to use its own simple source > interleaving > > >> algorithm. The most important part is that instructions are printed= in > > >> the order in which they were executed. > > > > > > What does "order in which they were executed" mean with today's > > > multi-core and multi-execution unit CPUs? > > > > > > Thanks. > > > > "multi-core" doesn't enter into the picture here. > > The context is a single thread of control. > > And "multi-execution unit" doesn't either because > > that's just an underlying implementation detail > > of the CPU - the program must behave "as if" > > each instruction is executed serially > > (or as otherwise defined by the ISA). >=20 > You and I know that, but the text makes it sound as if each > instruction was somehow stamped with its execution time, and then the > instruction stream presented in that order, after annotating each > instruction with its source. And that's misleading, IMO, because > evidently that's not what will happen. It's not a per-instruction timestamp but it's h/w supported execution traci= ng. The h/w generates a trace of executed instructions (per h/w thread), the OS switches buffers to collect the trace per s/w thread, and GDB presents this= to the user as execution-order disassembly (per thread). Now we need to interleave sources into this stream of instructions. Regards, Markus. Intel Deutschland GmbH Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany Tel: +49 89 99 8853-0, www.intel.de Managing Directors: Christin Eisenschmid, Prof. Dr. Hermann Eul Chairperson of the Supervisory Board: Tiffany Doon Silva Registered Office: Munich Commercial Register: Amtsgericht Muenchen HRB 186928