qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 01/12] target-s390x: Fix wrong argument in call of t


From: Stefan Weil
Subject: [Qemu-devel] [PATCH 01/12] target-s390x: Fix wrong argument in call of tcg_gen_shl_i64()
Date: Wed, 25 May 2011 22:25:18 +0200

tcg_gen_shl_i64 needs an argument of type TCGv_i64.
Using tmp4 needs some additional changes.

Signed-off-by: Stefan Weil <address@hidden>
---
 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]