From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=50147 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OMewd-0008A3-25 for qemu-devel@nongnu.org; Thu, 10 Jun 2010 06:25:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OMewa-0001Pn-PN for qemu-devel@nongnu.org; Thu, 10 Jun 2010 06:25:05 -0400 Received: from hall.aurel32.net ([88.191.82.174]:60625) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OMewa-0001Pc-J9 for qemu-devel@nongnu.org; Thu, 10 Jun 2010 06:25:04 -0400 Date: Thu, 10 Jun 2010 12:24:59 +0200 From: Aurelien Jarno Subject: Re: [Qemu-devel] [PATCH 11/35] tcg-s390: Tidy unimplemented opcodes. Message-ID: <20100610102459.GI26968@volta.aurel32.net> References: <1275678883-7082-1-git-send-email-rth@twiddle.net> <1275678883-7082-12-git-send-email-rth@twiddle.net> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <1275678883-7082-12-git-send-email-rth@twiddle.net> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Richard Henderson Cc: qemu-devel@nongnu.org, agraf@suse.de On Fri, Jun 04, 2010 at 12:14:19PM -0700, Richard Henderson wrote: > Signed-off-by: Richard Henderson > --- > tcg/s390/tcg-target.c | 25 ++++++++++--------------- > 1 files changed, 10 insertions(+), 15 deletions(-) > > diff --git a/tcg/s390/tcg-target.c b/tcg/s390/tcg-target.c > index 55f0fa9..5b2134b 100644 > --- a/tcg/s390/tcg-target.c > +++ b/tcg/s390/tcg-target.c > @@ -824,11 +824,6 @@ static inline void tcg_out_op(TCGContext *s, TCGOpcode opc, > } > break; > > - case INDEX_op_jmp: > - /* XXX */ > - tcg_abort(); > - break; > - > case INDEX_op_ld8u_i32: > case INDEX_op_ld8u_i64: > /* ??? LLC (RXY format) is only present with the extended-immediate > @@ -891,16 +886,6 @@ static inline void tcg_out_op(TCGContext *s, TCGOpcode opc, > tcg_out_st(s, TCG_TYPE_I64, args[0], args[1], args[2]); > break; > > - case INDEX_op_mov_i32: > - /* XXX */ > - tcg_abort(); > - break; > - > - case INDEX_op_movi_i32: > - /* XXX */ > - tcg_abort(); > - break; > - > case INDEX_op_add_i32: > if (const_args[2]) { > tcg_out_insn(s, RI, AHI, args[0], args[2]); > @@ -1077,6 +1062,16 @@ static inline void tcg_out_op(TCGContext *s, TCGOpcode opc, > tcg_out_qemu_st(s, args, LD_UINT64); > break; > > + case INDEX_op_mov_i32: > + case INDEX_op_mov_i64: > + case INDEX_op_movi_i32: > + case INDEX_op_movi_i64: > + /* These are always emitted by TCG directly. */ OTOH, these 4 ones are very easy to write in case TCG starts to emit such opcodes at some point. > + case INDEX_op_jmp: > + /* This one is obsolete and never emitted. */ > + tcg_abort(); I am fine with this one. > + break; > + > default: > fprintf(stderr,"unimplemented opc 0x%x\n",opc); > tcg_abort(); > -- > 1.7.0.1 > > > -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net