From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:42151) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SDaDi-00085c-6x for qemu-devel@nongnu.org; Fri, 30 Mar 2012 07:42:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SDaDd-000754-6c for qemu-devel@nongnu.org; Fri, 30 Mar 2012 07:42:17 -0400 Received: from mail-qc0-f173.google.com ([209.85.216.173]:64348) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SDaDc-000730-Vu for qemu-devel@nongnu.org; Fri, 30 Mar 2012 07:42:13 -0400 Received: by qcsc20 with SMTP id c20so289949qcs.4 for ; Fri, 30 Mar 2012 04:42:10 -0700 (PDT) Sender: Richard Henderson Message-ID: <4F759C0E.3000606@twiddle.net> Date: Fri, 30 Mar 2012 07:42:06 -0400 From: Richard Henderson MIME-Version: 1.0 References: <1333077432-22228-1-git-send-email-proljc@gmail.com> In-Reply-To: <1333077432-22228-1-git-send-email-proljc@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH V4 00/11] Qemu MIPS ASE DSP Support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jia Liu Cc: qemu-devel@nongnu.org, aurelien@aurel32.net On 03/29/2012 11:17 PM, Jia Liu wrote: > This is MIPS ASE DSP instructions support for QEMU. These instructions > are grouped according to "Chapter 4. MIPS DSP ASE Instruction Summary" > in MIPS ASE DSP manual [1]. > > [1] MIPS32® Architecture for Programmers VolumeIV-e: The MIPS® DSP > Application-Specific Extension to the MIPS32®Architecture > http://www.mips.com/products/product-materials/processor/mips-architecture/ Any plans to support the mips64 version? It also occurred to me to actually try this code, which shows you haven't thought about mips64 at all. Configure with --enable-debug: > CC mips64-softmmu/translate.o > /home/rth/work/qemu/qemu/target-mips/translate.c: In function 'gen_compute_branch': > /home/rth/work/qemu/qemu/target-mips/translate.c:2989:9: error: incompatible type for argument 1 of 'tcg_gen_andi_i32' > /home/rth/work/qemu/qemu/tcg/tcg-op.h:521:20: note: expected 'TCGv_i32' but argument is of type 'TCGv_i64' > /home/rth/work/qemu/qemu/target-mips/translate.c:2989:9: error: incompatible type for argument 2 of 'tcg_gen_andi_i32' > /home/rth/work/qemu/qemu/tcg/tcg-op.h:521:20: note: expected 'TCGv_i32' but argument is of type 'TCGv_i64' All of your helpers, whereever they receive or return a register value, need to use type target_ulong and the DEF_HELPER lines need to use "tl". All of the mips32 helpers you've written so far that return values need to make sure to sign-extend their results from 32-bits. With that, the compilation errors should go away, and you should produce correct results for the subset of the mips64 dsp ase that overlaps with the mips32 dsp ase. r~