digitalmars.D.bugs - [Issue 2299] New: the ABI documentation for registry convention does not include IA-64 platform
- d-bugmail puremagic.com Aug 20 2008
- "Jarrett Billingsley" <kb3ctd2 yahoo.com> Aug 20 2008
- d-bugmail puremagic.com Aug 26 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2299 Summary: the ABI documentation for registry convention does not include IA-64 platform Product: D Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: www.digitalmars.com AssignedTo: bugzilla digitalmars.com ReportedBy: manlio.perillo gmail.com The ABI documentation for registry convention says that: long and ulong are returned in EDX,EAX, where EDX gets the most significant half. However this is only true for IA-32 architecture. For IA-64 architecture long and ulong are returned in RAX. NOTE: I have not checked if this is true, but tango.Atomic.atomicIncrement assume this is true --
Aug 20 2008
<d-bugmail puremagic.com> wrote in message news:bug-2299-3 http.d.puremagic.com/issues/...http://d.puremagic.com/issues/show_bug.cgi?id=2299 Summary: the ABI documentation for registry convention does not include IA-64 platform Product: D Version: unspecified Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: www.digitalmars.com AssignedTo: bugzilla digitalmars.com ReportedBy: manlio.perillo gmail.com The ABI documentation for registry convention says that: long and ulong are returned in EDX,EAX, where EDX gets the most significant half. However this is only true for IA-32 architecture. For IA-64 architecture long and ulong are returned in RAX. NOTE: I have not checked if this is true, but tango.Atomic.atomicIncrement assume this is true
The ABI does not give any heed to 64-bit platforms. Or non-x86 platforms. In that case, I'm not sure that the ABI is right or wrong. The only 64-bit D compiler in existence right now is GDC, and it is technically nonconformant as it always uses the C calling convention.
Aug 20 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2299 ------- Comment #1 from bugzilla digitalmars.com 2008-08-26 02:08 ------- The assembler part of the ABI document is for the 32 bit x86 architecture, it does not address other architectures. --
Aug 26 2008









"Jarrett Billingsley" <kb3ctd2 yahoo.com> 