From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 41736 invoked by alias); 18 Oct 2015 21:17:12 -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 41725 invoked by uid 89); 18 Oct 2015 21:17:11 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-yk0-f181.google.com Received: from mail-yk0-f181.google.com (HELO mail-yk0-f181.google.com) (209.85.160.181) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Sun, 18 Oct 2015 21:17:09 +0000 Received: by ykdz2 with SMTP id z2so41699475ykd.3 for ; Sun, 18 Oct 2015 14:17:08 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.129.156.23 with SMTP id t23mr2296105ywg.151.1445203027959; Sun, 18 Oct 2015 14:17:07 -0700 (PDT) Received: by 10.13.243.193 with HTTP; Sun, 18 Oct 2015 14:17:07 -0700 (PDT) In-Reply-To: References: <1442847283-10200-1-git-send-email-markus.t.metzger@intel.com> Date: Sun, 18 Oct 2015 21:17:00 -0000 Message-ID: Subject: Re: [PATCH 0/6] disasm, record: fix "record instruction-history /m" From: Doug Evans To: "Metzger, Markus T" Cc: "palves@redhat.com" , "dje@google.com" , "gdb-patches@sourceware.org" Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2015-10/txt/msg00320.txt.bz2 On Mon, Oct 12, 2015 at 7:16 AM, Metzger, Markus T wrote: >> -----Original Message----- >> From: Metzger, Markus T >> Sent: Monday, September 21, 2015 4:55 PM >> To: palves@redhat.com; dje@google.com >> Cc: gdb-patches@sourceware.org >> Subject: [PATCH 0/6] disasm, record: fix "record instruction-history /m" > > >> Markus Metzger (6): >> disasm: change dump_insns to print a single instruction >> disasm: add struct disas_insn to describe to-be-disassembled >> instruction >> disas: add gdb_disassembly_vec >> disasm: use entire line table in line_has_code_p >> disasm: determine preceding lines independent of last_line >> btrace: use gdb_disassembly_vec and new source interleaving method > > Given the concerns about increased memory consumption and run-time > overhead in patch 3 and the changes to the source interleaving algorithm > in patches 4 and 5, I'd go with a modified version of my original RFC, i.e. > > - patches 1 and 2 from this series > - the rfc patch to interleave sources in record-btrace.c > - patch 6 from this series > > This will leave us with two source interleaving algorithms, one for a > consecutive range of memory, and one for a sequence of instructions > in the order in which they were recorded. > > Both will use a slightly modified dump_insn to print instruction tuples. > > I'm dropping the idea of preparing a vector of instructions to print and > and of trying to shoehorn record instruction-history's source interleaving > into do_mixed_source_and_assembly. > > Does that sound OK? I think so (devil is in the details). Supporting a vector of instructions sounds fine to me though. There doesn't have to be one entry point to the disassembler API. [5 would be bad, but 2 is ok: one that takes a range, one that takes a vector.]