get 64bit platforms without uint64 right again

This commit is contained in:
Christian Heimes 2012-10-14 04:17:50 +02:00
parent d376986014
commit 12e6a53b99
1 changed files with 5 additions and 3 deletions

View File

@ -98,9 +98,11 @@
#ifdef __sparc #ifdef __sparc
/* On SPARC with Solaris CC opt64 fails with 'invalid address alignment' */ /* On SPARC with Solaris CC opt64 fails with 'invalid address alignment' */
#define KeccakOpt 32 #define KeccakOpt 32
#elif SIZEOF_VOID_P == 8 #elif SIZEOF_VOID_P == 8 && defined(PY_UINT64_T)
/* opt64 works only for 64bit platforms with unsigned int64 */
#define KeccakOpt 64 #define KeccakOpt 64
#elif SIZEOF_VOID_P == 4 #else
/* opt32 is used for the remaining 32 and 64bit platforms */
#define KeccakOpt 32 #define KeccakOpt 32
#endif #endif
@ -109,7 +111,7 @@
#define Unrolling 24 #define Unrolling 24
#define UseBebigokimisa #define UseBebigokimisa
typedef PY_UINT64_T UINT64; typedef PY_UINT64_T UINT64;
#elif KeccakOpt == 32 && defined(PY_UINT64_T) #elif KeccakOpt == 32 && defined(PY_UINT64_T)
/* 32bit platforms with unsigned int64 */ /* 32bit platforms with unsigned int64 */
#define Unrolling 2 #define Unrolling 2
#define UseSchedule 3 #define UseSchedule 3