qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PULL 0/3] M68k for 2.8 patches
@ 2016-11-24 15:28 Laurent Vivier
  2016-11-24 15:28 ` [Qemu-devel] [PULL 1/3] target-m68k: fix EXG instruction Laurent Vivier
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Laurent Vivier @ 2016-11-24 15:28 UTC (permalink / raw)
  To: qemu-devel; +Cc: Laurent Vivier

The following changes since commit 00227fefd2059464cd2f59aed29944874c630e2f:

  Update version for v2.8.0-rc1 release (2016-11-22 22:29:08 +0000)

are available in the git repository at:

  git://github.com/vivier/qemu-m68k.git tags/m68k-for-2.8-pull-request

for you to fetch changes up to 4a18cd44f3c905d443c26e26bb9b09932606d1a3:

  target-m68k: fix muluw/mulsw (2016-11-24 16:24:27 +0100)

----------------------------------------------------------------
This series fixes some errors found unsing risu.
----------------------------------------------------------------

Laurent Vivier (3):
  target-m68k: fix EXG instruction
  target-m68k: Fix cmpa operand size
  target-m68k: fix muluw/mulsw

 target-m68k/translate.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Qemu-devel] [PULL 1/3] target-m68k: fix EXG instruction
  2016-11-24 15:28 [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Laurent Vivier
@ 2016-11-24 15:28 ` Laurent Vivier
  2016-11-24 15:28 ` [Qemu-devel] [PULL 2/3] target-m68k: Fix cmpa operand size Laurent Vivier
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Laurent Vivier @ 2016-11-24 15:28 UTC (permalink / raw)
  To: qemu-devel; +Cc: Laurent Vivier

opcodes of "EXG Ax,Ay" and "EXG Dx,Dy" have been swapped

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Richard Henderson <rth@twiddle.net>
---
 target-m68k/translate.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index 9ad974f..8e522db 100644
--- a/target-m68k/translate.c
+++ b/target-m68k/translate.c
@@ -2198,13 +2198,13 @@ static void do_exg(TCGv reg1, TCGv reg2)
     tcg_temp_free(temp);
 }
 
-DISAS_INSN(exg_aa)
+DISAS_INSN(exg_dd)
 {
     /* exchange Dx and Dy */
     do_exg(DREG(insn, 9), DREG(insn, 0));
 }
 
-DISAS_INSN(exg_dd)
+DISAS_INSN(exg_aa)
 {
     /* exchange Ax and Ay */
     do_exg(AREG(insn, 9), AREG(insn, 0));
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Qemu-devel] [PULL 2/3] target-m68k: Fix cmpa operand size
  2016-11-24 15:28 [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Laurent Vivier
  2016-11-24 15:28 ` [Qemu-devel] [PULL 1/3] target-m68k: fix EXG instruction Laurent Vivier
@ 2016-11-24 15:28 ` Laurent Vivier
  2016-11-24 15:28 ` [Qemu-devel] [PULL 3/3] target-m68k: fix muluw/mulsw Laurent Vivier
  2016-11-25 12:05 ` [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Stefan Hajnoczi
  3 siblings, 0 replies; 5+ messages in thread
From: Laurent Vivier @ 2016-11-24 15:28 UTC (permalink / raw)
  To: qemu-devel; +Cc: Laurent Vivier

"The size of the operation can be specified as word or long.
Word length source operands are sign-extended to 32 bits for
comparison."

So comparison is always done using OS_LONG.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Richard Henderson <rth@twiddle.net>
---
 target-m68k/translate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index 8e522db..d2d6816 100644
--- a/target-m68k/translate.c
+++ b/target-m68k/translate.c
@@ -2170,7 +2170,7 @@ DISAS_INSN(cmpa)
     }
     SRC_EA(env, src, opsize, 1, NULL);
     reg = AREG(insn, 9);
-    gen_update_cc_cmp(s, reg, src, opsize);
+    gen_update_cc_cmp(s, reg, src, OS_LONG);
 }
 
 DISAS_INSN(eor)
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [Qemu-devel] [PULL 3/3] target-m68k: fix muluw/mulsw
  2016-11-24 15:28 [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Laurent Vivier
  2016-11-24 15:28 ` [Qemu-devel] [PULL 1/3] target-m68k: fix EXG instruction Laurent Vivier
  2016-11-24 15:28 ` [Qemu-devel] [PULL 2/3] target-m68k: Fix cmpa operand size Laurent Vivier
@ 2016-11-24 15:28 ` Laurent Vivier
  2016-11-25 12:05 ` [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Stefan Hajnoczi
  3 siblings, 0 replies; 5+ messages in thread
From: Laurent Vivier @ 2016-11-24 15:28 UTC (permalink / raw)
  To: qemu-devel; +Cc: Laurent Vivier

"The multiplier and multiplicand are both word operands, and the result
is a long-word operand."

So compute flags on a long-word result, not on a word result.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Reviewed-by: Richard Henderson <rth@twiddle.net>
---
 target-m68k/translate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index d2d6816..d6ed883 100644
--- a/target-m68k/translate.c
+++ b/target-m68k/translate.c
@@ -1186,7 +1186,7 @@ DISAS_INSN(mulw)
     SRC_EA(env, src, OS_WORD, sign, NULL);
     tcg_gen_mul_i32(tmp, tmp, src);
     tcg_gen_mov_i32(reg, tmp);
-    gen_logic_cc(s, tmp, OS_WORD);
+    gen_logic_cc(s, tmp, OS_LONG);
 }
 
 DISAS_INSN(divw)
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PULL 0/3] M68k for 2.8 patches
  2016-11-24 15:28 [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Laurent Vivier
                   ` (2 preceding siblings ...)
  2016-11-24 15:28 ` [Qemu-devel] [PULL 3/3] target-m68k: fix muluw/mulsw Laurent Vivier
@ 2016-11-25 12:05 ` Stefan Hajnoczi
  3 siblings, 0 replies; 5+ messages in thread
From: Stefan Hajnoczi @ 2016-11-25 12:05 UTC (permalink / raw)
  To: Laurent Vivier; +Cc: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 1046 bytes --]

On Thu, Nov 24, 2016 at 04:28:04PM +0100, Laurent Vivier wrote:
> The following changes since commit 00227fefd2059464cd2f59aed29944874c630e2f:
> 
>   Update version for v2.8.0-rc1 release (2016-11-22 22:29:08 +0000)
> 
> are available in the git repository at:
> 
>   git://github.com/vivier/qemu-m68k.git tags/m68k-for-2.8-pull-request
> 
> for you to fetch changes up to 4a18cd44f3c905d443c26e26bb9b09932606d1a3:
> 
>   target-m68k: fix muluw/mulsw (2016-11-24 16:24:27 +0100)
> 
> ----------------------------------------------------------------
> This series fixes some errors found unsing risu.
> ----------------------------------------------------------------
> 
> Laurent Vivier (3):
>   target-m68k: fix EXG instruction
>   target-m68k: Fix cmpa operand size
>   target-m68k: fix muluw/mulsw
> 
>  target-m68k/translate.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> -- 
> 2.7.4
> 
> 

Thanks, applied to my staging tree:
https://github.com/stefanha/qemu/commits/staging

Stefan

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 455 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-11-25 12:05 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-24 15:28 [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Laurent Vivier
2016-11-24 15:28 ` [Qemu-devel] [PULL 1/3] target-m68k: fix EXG instruction Laurent Vivier
2016-11-24 15:28 ` [Qemu-devel] [PULL 2/3] target-m68k: Fix cmpa operand size Laurent Vivier
2016-11-24 15:28 ` [Qemu-devel] [PULL 3/3] target-m68k: fix muluw/mulsw Laurent Vivier
2016-11-25 12:05 ` [Qemu-devel] [PULL 0/3] M68k for 2.8 patches Stefan Hajnoczi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).