[Issue 5706] Incorrect opcode prefix generated for x86_64 inline assembly

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Mar 6 04:46:00 PST 2011


http://d.puremagic.com/issues/show_bug.cgi?id=5706



--- Comment #1 from Shahid <hughes4 at gmail.com> 2011-03-06 04:43:01 PST ---
I ran into another one I did not notice earlier.
As a side note i've patched my local copy of backend/ptrntab.c to include two
opcodes SYSCALL/SYSRET but I don't know how to properly handle SYSRET for 64bit
mode as it needs a REX.w prefix

===

/*
   Disassembly of section .text._D1a1aFZv:

   0000000000000000 <_D1a1aFZv>:
   0:      48 89 c2                mov    %rax,%rdx
   3:      48 89 c2                mov    %rax,%rdx
*/
void a() { asm {
        naked;
        mov RDX, RAX;
        mov R10, RAX; // should have REX.b set ( 49 89 c2 )
} }

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list