From 02c4e63fac1dd9e017d5d308527054bcd66f6f06 Mon Sep 17 00:00:00 2001 From: Darkvater Date: Sun, 5 Feb 2006 11:10:31 +0000 Subject: [PATCH] (svn r3553) - Revert r3549 "Change the behaviour of OTTD_ALIGNMENT". Some tests showed that forcing aligned reads slowed down the code (drawing smallmap) by 14%. Change back to the old behaviour. --- stdafx.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/stdafx.h b/stdafx.h index 0f15a7b818..873b880a6f 100644 --- a/stdafx.h +++ b/stdafx.h @@ -7,9 +7,6 @@ #include #include -/* Default to forced alignment-reading. Undef if wanted */ -#define OTTD_ALIGNMENT - // MacOS X will use an NSAlert to display failed assertaions since they're lost unless running from a terminal // strgen always runs from terminal and don't need a window for asserts #if !defined(__APPLE__) || defined(STRGEN) @@ -85,7 +82,6 @@ # define CDECL # define NOT_REACHED() assert(0) # define GCC_PACK -# undef OTTD_ALIGNMENT # include #endif /* __WATCOMC__ */ @@ -141,7 +137,6 @@ # endif # endif /* _MSC_VER < 1300 */ -# undef OTTD_ALIGNMENT # define GCC_PACK // This is needed to zlib uses the stdcall calling convention on visual studio, also used with libpng (VS6 warning) @@ -200,8 +195,13 @@ typedef unsigned char byte; typedef unsigned __int64 uint64; #endif /* __BEOS__ */ +#if defined(ARM) || defined(__arm__) || defined(__alpha__) +# define OTTD_ALIGNMENT +#endif + // Setup alignment and conversion macros #if defined(TTD_BIG_ENDIAN) +# define OTTD_ALIGNMENT static inline uint32 TO_LE32(uint32 x) { return BSWAP32(x); } static inline uint16 TO_LE16(uint16 x) { return BSWAP16(x); } static inline uint32 FROM_LE32(uint32 x) { return BSWAP32(x); }