From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:50995) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QPKeI-0002ZO-0C for qemu-devel@nongnu.org; Wed, 25 May 2011 16:25:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QPKeF-0007WZ-9Z for qemu-devel@nongnu.org; Wed, 25 May 2011 16:25:45 -0400 Received: from moutng.kundenserver.de ([212.227.17.8]:57511) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QPKeE-0007VK-Ud for qemu-devel@nongnu.org; Wed, 25 May 2011 16:25:43 -0400 From: Stefan Weil Date: Wed, 25 May 2011 22:25:18 +0200 Message-Id: <1306355129-23447-2-git-send-email-weil@mail.berlios.de> In-Reply-To: <1306355129-23447-1-git-send-email-weil@mail.berlios.de> References: <1306355129-23447-1-git-send-email-weil@mail.berlios.de> Subject: [Qemu-devel] [PATCH 01/12] target-s390x: Fix wrong argument in call of tcg_gen_shl_i64() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alexander Graf Cc: QEMU Developers tcg_gen_shl_i64 needs an argument of type TCGv_i64. Using tmp4 needs some additional changes. Signed-off-by: Stefan Weil --- target-s390x/translate.c | 8 +++++--- 1 files changed, 5 insertions(+), 3 deletions(-) diff --git a/target-s390x/translate.c b/target-s390x/translate.c index 8e71df3..3614516 100644 --- a/target-s390x/translate.c +++ b/target-s390x/translate.c @@ -2056,7 +2056,6 @@ do_mh: even for very long ones... */ tmp = get_address(s, 0, b2, d2); tmp3 = tcg_const_i64(stm_len); - tmp4 = tcg_const_i64(32); for (i = r1;; i = (i + 1) % 16) { switch (op) { case 0x4: @@ -2070,7 +2069,9 @@ do_mh: #else tmp2 = tcg_temp_new_i64(); tcg_gen_qemu_ld32u(tmp2, tmp, get_mem_index(s)); - tcg_gen_shl_i64(tmp2, tmp2, 4); + tmp4 = tcg_const_i64(4); + tcg_gen_shl_i64(tmp2, tmp2, tmp4); + tcg_temp_free_i64(tmp4); tcg_gen_ext32u_i64(regs[i], regs[i]); tcg_gen_or_i64(regs[i], regs[i], tmp2); #endif @@ -2081,7 +2082,9 @@ do_mh: break; case 0x26: tmp2 = tcg_temp_new_i64(); + tmp4 = tcg_const_i64(32); tcg_gen_shr_i64(tmp2, regs[i], tmp4); + tcg_temp_free_i64(tmp4); tcg_gen_qemu_st32(tmp2, tmp, get_mem_index(s)); tcg_temp_free_i64(tmp2); break; @@ -2094,7 +2097,6 @@ do_mh: tcg_gen_add_i64(tmp, tmp, tmp3); } tcg_temp_free_i64(tmp); - tcg_temp_free_i64(tmp4); break; case 0x2c: /* STCMH R1,M3,D2(B2) [RSY] */ tmp = get_address(s, 0, b2, d2); -- 1.7.2.5