qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 2/3] target-m68k: implement 680x0 movem


From: Richard Henderson
Subject: Re: [Qemu-devel] [PATCH 2/3] target-m68k: implement 680x0 movem
Date: Mon, 31 Oct 2016 06:19:43 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0

On 10/31/2016 03:20 AM, Laurent Vivier wrote:
+        uint16_t mask2 = mask;
+        TCGv r[16];
+        for (i = 0; i < 16; i++, mask >>= 1) {
+            if (mask & 1) {
+                r[i] = gen_load(s, opsize, addr, 1);
+                tcg_gen_add_i32(addr, addr, incr);
+            }
+        }
+        for (i = 0; i < 16; i++, mask2 >>= 1) {
+            if (mask2 & 1) {
+                tcg_gen_mov_i32(mreg(i), r[i]);
+                tcg_temp_free(r[i]);
+            }
+        }

While it's not wrong, why not examine mask non-destructively.

  if ((mask >> i) & 1)


r~



reply via email to

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