[Issue 14872] New: [2.068.0-rc1] Label address in asm [x86-64]
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Wed Aug 5 08:49:03 PDT 2015
https://issues.dlang.org/show_bug.cgi?id=14872
Issue ID: 14872
Summary: [2.068.0-rc1] Label address in asm [x86-64]
Product: D
Version: D2
Hardware: x86_64
OS: Windows
Status: NEW
Severity: major
Priority: P1
Component: dmd
Assignee: nobody at puremagic.com
Reporter: wyrlon at gmx.net
32bit x86 asm works fine, but I can't get 64bit working.
import std.stdio;
void main()
{
size_t addr1=123;
size_t addr2=456;
version(D_InlineAsm_X86_64)
asm
{
lea RAX, lbl1;
mov addr1, RAX;
lea RAX, lbl2;
mov addr2, RAX;
}
else version(D_InlineAsm_X86)
asm
{
lea EAX, lbl1;
mov addr1, EAX;
lea EAX, lbl2;
mov addr2, EAX;
}
lbl1:
writeln(addr1); // equals 1 for X86-64
lbl2:
writeln(addr2); // equals 1 for X86-64
}
--
More information about the Digitalmars-d-bugs
mailing list