www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Processors, 32 and 64 bits (X86_64)

I added the non-AMD 64-bit "versions" to the page at
http://www.prowiki.org/wiki4d/wiki.cgi?DocComments/Version

 # X86_64 (AMD and Intel 64 bit processors)
     * AMD64 (AMD 64 bit processors)
     * EM64T (Intel 64-bit extensions)

The new Xeons have this halfway mode that is not Itanium. And "X86_64" should probably be used here, instead of the vendor-specific AMD64 version ? (they should be compatible) For PowerPC®, "PPC" is the 32-bit version and "PPC64" the 64-bit. In Apple systems, G3 and G4 are 32-bit and the G5 is 64-bit. I'm not sure what names that the SPARC® family uses, but I think that "SPARC" is 32-bit and "UltraSPARC" is 64-bit ? Still think that it could be a good idea to define 32 vs 64 as common versions, like GDC does already. But Walter didn't.
 version (GNU)
 {
     version (GNU_BitsPerPointer32)
     {
         alias uint size_t;
         alias int ptrdiff_t;
     }
     else version (GNU_BitsPerPointer64)
     {
         alias ulong size_t;
         alias long ptrdiff_t;
     }
     else
     {
         static assert(0);
     }
 }

--anders
Feb 25 2005