|
| From: | malc |
| Subject: | Re: [Qemu-devel] [Bug 600589] [NEW] xchg r8,rax treated as nop |
| Date: | Thu, 1 Jul 2010 20:43:06 +0400 (MSD) |
| User-agent: | Alpine 2.00 (LNX 1167 2008-08-23) |
On Thu, 1 Jul 2010, Richard Henderson wrote:
> On 07/01/2010 05:04 AM, Vic3Dexe wrote:
> > Public bug reported:
> >
> > xchg r8,rax (49h 90h) executed as nop (90h) in long mode, in other words
> > REX not used.
> >
> > qemu 0.12.4, host Win 7 x64, running qemu-system-x86_64.exe.
> >
> > ** Affects: qemu
> > Importance: Undecided
> > Status: New
> >
>
> Verified. Test case for x86_64-linux-user:
>
> .globl main
> .type main, @function
> main:
> movl $0, %r8d
> movl $1, %eax
> xchgq %r8, %rax
> ret
>
> Expected result is exit status 0.
>
No surprise really:
target-i386/translate.c lines 6665-...
case 0x90: /* nop */
/* XXX: xchg + rex handling */
/* XXX: correct lock test for all insn */
The code to handle that just isn't there.
--
mailto:address@hidden
| [Prev in Thread] | Current Thread | [Next in Thread] |