From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id BF214C04AB3 for ; Mon, 27 May 2019 15:41:31 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9C8FB20665 for ; Mon, 27 May 2019 15:41:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9C8FB20665 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=users.sourceforge.jp Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([127.0.0.1]:47333 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hVHkg-0001wU-P8 for qemu-devel@archiver.kernel.org; Mon, 27 May 2019 11:41:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56066) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hVHim-0000Z9-JQ for qemu-devel@nongnu.org; Mon, 27 May 2019 11:39:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hVHil-0007NK-Kd for qemu-devel@nongnu.org; Mon, 27 May 2019 11:39:32 -0400 Received: from mail02.asahi-net.or.jp ([202.224.55.14]:58409) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hVHil-0007B7-6p for qemu-devel@nongnu.org; Mon, 27 May 2019 11:39:31 -0400 Received: from h61-195-96-97.vps.ablenet.jp (h61-195-96-97.ablenetvps.ne.jp [61.195.96.97]) (Authenticated sender: PQ4Y-STU) by mail02.asahi-net.or.jp (Postfix) with ESMTPA id 3EEEE3E62D; Tue, 28 May 2019 00:39:27 +0900 (JST) Received: from yo-satoh-debian.ysato.ml (ZM005235.ppp.dion.ne.jp [222.8.5.235]) by h61-195-96-97.vps.ablenet.jp (Postfix) with ESMTPSA id 050DB240086; Tue, 28 May 2019 00:39:26 +0900 (JST) Date: Tue, 28 May 2019 00:30:45 +0900 Message-ID: <871s0j7w4a.wl-ysato@users.sourceforge.jp> From: Yoshinori Sato To: Richard Henderson In-Reply-To: <20190523150803.31504-7-richard.henderson@linaro.org> References: <20190523150803.31504-1-richard.henderson@linaro.org> <20190523150803.31504-7-richard.henderson@linaro.org> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (=?ISO-8859-4?Q?Goj=F2?=) APEL/10.8 EasyPG/1.0.0 Emacs/25.1 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 202.224.55.14 Subject: Re: [Qemu-devel] [PATCH 6/6] target/rx: Dump bytes for each insn during disassembly X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: qemu-devel@nongnu.org Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" On Fri, 24 May 2019 00:08:03 +0900, Richard Henderson wrote: > > There are so many different forms of each RX instruction > that it will be very useful to be able to look at the bytes > to see on which path a bug may lie. > > Signed-off-by: Richard Henderson Reviewed-by: Yoshinori Sato > --- > target/rx/disas.c | 16 +++++++++++++++- > 1 file changed, 15 insertions(+), 1 deletion(-) > > diff --git a/target/rx/disas.c b/target/rx/disas.c > index 5a32a87534..d73b53db44 100644 > --- a/target/rx/disas.c > +++ b/target/rx/disas.c > @@ -102,7 +102,21 @@ static int bdsp_s(DisasContext *ctx, int d) > /* Include the auto-generated decoder. */ > #include "decode.inc.c" > > -#define prt(...) (ctx->dis->fprintf_func)((ctx->dis->stream), __VA_ARGS__) > +static void dump_bytes(DisasContext *ctx) > +{ > + int i, len = ctx->len; > + > + for (i = 0; i < len; ++i) { > + ctx->dis->fprintf_func(ctx->dis->stream, "%02x ", ctx->bytes[i]); > + } > + ctx->dis->fprintf_func(ctx->dis->stream, "%*c", (8 - i) * 3, '\t'); > +} > + > +#define prt(...) \ > + do { \ > + dump_bytes(ctx); \ > + ctx->dis->fprintf_func(ctx->dis->stream, __VA_ARGS__); \ > + } while (0) > > #define RX_MEMORY_BYTE 0 > #define RX_MEMORY_WORD 1 > -- > 2.17.1 >