From patchwork Fri Jun 29 06:41:28 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: dunrong huang X-Patchwork-Id: 167991 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 727EFB700C for ; Fri, 29 Jun 2012 16:41:14 +1000 (EST) Received: from localhost ([::1]:60509 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SkUtE-0000cO-BY for incoming@patchwork.ozlabs.org; Fri, 29 Jun 2012 02:41:12 -0400 Received: from eggs.gnu.org ([208.118.235.92]:44242) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SkUt6-0000cJ-OV for qemu-devel@nongnu.org; Fri, 29 Jun 2012 02:41:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SkUt4-0002oZ-Vl for qemu-devel@nongnu.org; Fri, 29 Jun 2012 02:41:04 -0400 Received: from mail-pz0-f45.google.com ([209.85.210.45]:65492) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SkUt4-0002np-Ma for qemu-devel@nongnu.org; Fri, 29 Jun 2012 02:41:02 -0400 Received: by dadn2 with SMTP id n2so4244757dad.4 for ; Thu, 28 Jun 2012 23:41:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer; bh=Co9WTyomCGvHjwiBSuqTX5bRcHekZy3VoKS+ebEGKZc=; b=bq3kPz/BzBOTOgdK3I76Vp0Ij7HcNr/WwYS94gkh3o+xE/N1H6TN3JbpU5qlj9ywWx nlcJuZXcH+fj5+DYYZJOA+PCLkBnr+nohFrz4wUhD/I99T+0QDEuKkPmMS4qqbixCgay E5CpjAuHTeFbFPGYHmqVGo1PhHg3zPwTCVIgPn8DtbuZ0XUpXpPSVZrL27XIRWfXb15K ZSkXpWC71Cw6S+K7jE0nhlLDVVyCmGBTDsR3VSLu0evK0Zh3PDtYKEjWTDZdr2yEGmdZ OEKMiWcFn/sUsTueRLyyFMuDdVojGYi5nz9JMi3eqFjJ2Qm7QTl4rw0SD5glw5wYz6KB hIJg== Received: by 10.68.134.201 with SMTP id pm9mr3645781pbb.49.1340952060405; Thu, 28 Jun 2012 23:41:00 -0700 (PDT) Received: from riegamaths@gmail.com ([119.255.44.227]) by mx.google.com with ESMTPS id ku7sm4528310pbc.31.2012.06.28.23.40.54 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 28 Jun 2012 23:40:59 -0700 (PDT) Received: by riegamaths@gmail.com (sSMTP sendmail emulation); Fri, 29 Jun 2012 14:41:28 +0800 From: Dunrong Huang To: qemu-devel@nongnu.org Date: Fri, 29 Jun 2012 14:41:28 +0800 Message-Id: <1340952088-7192-1-git-send-email-riegamaths@gmail.com> X-Mailer: git-send-email 1.7.8.4 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.210.45 Cc: Blue Swirl , Stefan Weil Subject: [Qemu-devel] [PATCH] target-i386: fix build with -Werror X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Commit c4baa0503d9623f1ce891f525ccd140c598bc29a improved SSE table type safety but raises compile error of incompatible pointer type. Fix it by casting to correct function type Signed-off-by: Dunrong Huang --- target-i386/translate.c | 22 +++++++++++----------- 1 files changed, 11 insertions(+), 11 deletions(-) diff --git a/target-i386/translate.c b/target-i386/translate.c index a902f4a..81928b5 100644 --- a/target-i386/translate.c +++ b/target-i386/translate.c @@ -2950,20 +2950,20 @@ static const SSEFunc_0_pp sse_op_table2[3 * 8][2] = { static const SSEFunc_0_pi sse_op_table3a[4] = { gen_helper_cvtsi2ss, gen_helper_cvtsi2sd, - X86_64_ONLY(gen_helper_cvtsq2ss), - X86_64_ONLY(gen_helper_cvtsq2sd), + X86_64_ONLY((SSEFunc_0_pi)gen_helper_cvtsq2ss), + X86_64_ONLY((SSEFunc_0_pi)gen_helper_cvtsq2sd), }; static const SSEFunc_i_p sse_op_table3b[4 * 2] = { gen_helper_cvttss2si, gen_helper_cvttsd2si, - X86_64_ONLY(gen_helper_cvttss2sq), - X86_64_ONLY(gen_helper_cvttsd2sq), + X86_64_ONLY((SSEFunc_i_p)gen_helper_cvttss2sq), + X86_64_ONLY((SSEFunc_i_p)gen_helper_cvttsd2sq), gen_helper_cvtss2si, gen_helper_cvtsd2si, - X86_64_ONLY(gen_helper_cvtss2sq), - X86_64_ONLY(gen_helper_cvtsd2sq), + X86_64_ONLY((SSEFunc_i_p)gen_helper_cvtss2sq), + X86_64_ONLY((SSEFunc_i_p)gen_helper_cvtsd2sq), }; static const SSEFunc_0_pp sse_op_table4[8][4] = { @@ -3568,8 +3568,8 @@ static void gen_sse(DisasContext *s, int b, target_ulong pc_start, int rex_r) tcg_gen_trunc_tl_i32(cpu_tmp2_i32, cpu_T[0]); sse_fn_pi(cpu_ptr0, cpu_tmp2_i32); } else { - sse_fn_pl = sse_op_table3a[(s->dflag == 2) * 2 + - ((b >> 8) - 2)]; + sse_fn_pl = (SSEFunc_0_pl)sse_op_table3a[(s->dflag == 2) * 2 + + ((b >> 8) - 2)]; sse_fn_pl(cpu_ptr0, cpu_T[0]); } break; @@ -3630,9 +3630,9 @@ static void gen_sse(DisasContext *s, int b, target_ulong pc_start, int rex_r) sse_fn_i_p(cpu_tmp2_i32, cpu_ptr0); tcg_gen_extu_i32_tl(cpu_T[0], cpu_tmp2_i32); } else { - sse_fn_l_p = sse_op_table3b[(s->dflag == 2) * 2 + - ((b >> 8) - 2) + - (b & 1) * 4]; + sse_fn_l_p = (SSEFunc_l_p)sse_op_table3b[(s->dflag == 2) * 2 + + ((b >> 8) - 2) + + (b & 1) * 4]; sse_fn_l_p(cpu_T[0], cpu_ptr0); } gen_op_mov_reg_T0(ot, reg);