Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

inline asm memory operand always uses 64-bit addressing #17664

Open
dlangBugzillaToGithub opened this issue Jun 8, 2014 · 1 comment
Open
Labels

Comments

@dlangBugzillaToGithub
Copy link

Martin Nowak (@MartinNowak) reported this on 2014-06-08T16:43:33Z

Transferred from https://issues.dlang.org/show_bug.cgi?id=12878

CC List

Description

cat > bug.d << CODE
void main()
{
    asm
    {
        mov EAX, [ESI];
        movdqu XMM0, [ESI];
    }
}
CODE

dmd -c bug.d
objdump -d bug.o
----
   4:	8b 06                	mov    (%rsi),%eax
   6:	f3 0f 6f 06          	movdqu (%rsi),%xmm0
----
The compiler should emit an address size prefix (67H) like so.
----
  15:	67 8b 06             	mov    (%esi),%eax
  18:	67 f3 0f 6f 06       	movdqu (%esi),%xmm0
----
@dlangBugzillaToGithub
Copy link
Author

dlang-bot commented on 2020-08-14T09:45:22Z

@WalterBright created dlang/dmd pull request #11571 "fix Issue 12878 - inline asm memory operand always uses 64-bit addres…" fixing this issue:

- fix Issue 12878 - inline asm memory operand always uses 64-bit addressing

https://github.com/dlang/dmd/pull/11571

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant