[Python-checkins] cpython: Issue #16113: KeccakP-1600-opt64 does not support big endian platforms yet.
christian.heimes
python-checkins at python.org
Wed Sep 7 06:43:01 EDT 2016
https://hg.python.org/cpython/rev/4971ca2960c7
changeset: 103218:4971ca2960c7
user: Christian Heimes <christian at python.org>
date: Wed Sep 07 12:42:47 2016 +0200
summary:
Issue #16113: KeccakP-1600-opt64 does not support big endian platforms yet.
files:
Modules/_sha3/sha3module.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/Modules/_sha3/sha3module.c b/Modules/_sha3/sha3module.c
--- a/Modules/_sha3/sha3module.c
+++ b/Modules/_sha3/sha3module.c
@@ -37,8 +37,11 @@
/* opt64 uses un-aligned memory access that causes a BUS error with msg
* 'invalid address alignment' on SPARC. */
#define KeccakOpt 32
+#elif PY_BIG_ENDIAN
+ /* opt64 is not yet supported on big endian platforms */
+ #define KeccakOpt 32
#elif SIZEOF_VOID_P == 8 && defined(PY_UINT64_T)
- /* opt64 works only for 64bit platforms with unsigned int64 */
+ /* opt64 works only on little-endian 64bit platforms with unsigned int64 */
#define KeccakOpt 64
#else
/* opt32 is used for the remaining 32 and 64bit platforms */
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list