From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47802) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dRRxW-00024v-Us for qemu-devel@nongnu.org; Sat, 01 Jul 2017 19:37:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dRRxT-0000kY-SF for qemu-devel@nongnu.org; Sat, 01 Jul 2017 19:37:50 -0400 Received: from mail-qt0-x22e.google.com ([2607:f8b0:400d:c0d::22e]:34519) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dRRxT-0000kD-Nw for qemu-devel@nongnu.org; Sat, 01 Jul 2017 19:37:47 -0400 Received: by mail-qt0-x22e.google.com with SMTP id 32so122373427qtv.1 for ; Sat, 01 Jul 2017 16:37:47 -0700 (PDT) Sender: Richard Henderson References: <149865219962.17063.10630533069463266646.stgit@frigg.lan> <149865316837.17063.1608754834009945976.stgit@frigg.lan> From: Richard Henderson Message-ID: <528c921e-d04c-f064-08f8-2c6a0b3f23f1@twiddle.net> Date: Sat, 1 Jul 2017 16:37:43 -0700 MIME-Version: 1.0 In-Reply-To: <149865316837.17063.1608754834009945976.stgit@frigg.lan> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH v11 04/29] target: [tcg] Add generic translation framework List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?Q?Llu=c3=ads_Vilanova?= , qemu-devel@nongnu.org Cc: Paolo Bonzini , Peter Crosthwaite , "Emilio G. Cota" , =?UTF-8?Q?Alex_Benn=c3=a9e?= On 06/28/2017 05:32 AM, LluĂ­s Vilanova wrote: > + void (*init_disas_context)(DisasContextBase *db, CPUState *cpu); > + void (*init_globals)(DisasContextBase *db, CPUState *cpu); > + void (*tb_start)(DisasContextBase *db, CPUState *cpu); > + void (*insn_start)(DisasContextBase *db, CPUState *cpu); > + BreakpointCheckType (*breakpoint_check)(DisasContextBase *db, CPUState *cpu, > + const CPUBreakpoint *bp); > + target_ulong (*translate_insn)(DisasContextBase *db, CPUState *cpu); > + void (*tb_stop)(DisasContextBase *db, CPUState *cpu); > + void (*disas_log)(const DisasContextBase *db, CPUState *cpu); Any reason not to stuff the cpu pointer into the DisasContextBase instead of passing it around separately? Otherwise, Reviewed-by: Richard Henderson r~