From: Jeremy C. <je...@co...> - 2011-08-31 14:05:46
|
Sounds fine to me except the x86 variants should probably be X86 and X86_64 instead of lower case x86*. Jeremy -----Original Message----- From: Matt Lewis Sent: Wednesday, August 31, 2011 9:57 AM To: rap...@li... Subject: [Rapideuphoria-develop] Architecture ifdefs I've been thinking about the new architecture ifdefs for 4.1. It seems to me that we support 4 different architectures, though there is a lot of overlap, and my definition of architecture is maybe somewhat fuzzy, since it includes some OS dependencies. Here's my view of the situation: x86 x86-64 Windows x86-64 *nix ARM32 I count x86-64 twice, since there are some differences (mainly in the size of a long int) between Windows and *nix. While technically the same architecture, it may be important to understand which is which (though through proper memstruct support, hopefully less so). So perhaps the following ifdefs applied to the obvious situations: BITS32 (obviously, if we allowed values inside of ifdefs, we could just have BITS) BITS64 x86 x86_64 ARM32 (eventually, we'll probably want to support 64-bit ARM) LONG32 LONG64 I'm not sure if the last two make sense. Adding these would require allowing to set them for the translator. The actual C code we generate is cross platform, but this would affect which user code is actually parsed and translated. So far, I've been doing this sort of thing at run time, using sizeof( C_POINTER ) to determine if we're running in 32 or 64 bit mode. I think all of these (maybe excepting the LONG* ifdefs) are required as they'd be used for different reasons. For instance, when determining the max size of a euphoria integer, I don't care which OS or even which architecture I'm using. -- Matt Lewis ------------------------------------------------------------------------------ Special Offer -- Download ArcSight Logger for FREE! Finally, a world-class log management solution at an even better price-free! And you'll get a free "Love Thy Logs" t-shirt when you download Logger. Secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsisghtdev2dev _______________________________________________ Rapideuphoria-develop mailing list Rap...@li... https://lists.sourceforge.net/lists/listinfo/rapideuphoria-develop |