[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

AltStyle によって変換されたページ (->オリジナル) /