summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Vivier <laurent@vivier.eu>2016-11-23 13:57:56 +0100
committerLaurent Vivier <laurent@vivier.eu>2016-11-24 09:38:44 +0100
commitc090c97d925ce751d8834d5c5a404952598f67c0 (patch)
treeafba82fd01464331ed574a754cb46311d7de2960
parent00227fefd2059464cd2f59aed29944874c630e2f (diff)
downloadqemu-c090c97d925ce751d8834d5c5a404952598f67c0.tar.gz
target-m68k: fix EXG instruction
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>
-rw-r--r--target-m68k/translate.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target-m68k/translate.c b/target-m68k/translate.c
index 9ad974f86a..8e522db9f3 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));