From 5ba89c135d3cc88f830316b7c16ae42aa0d90a9e Mon Sep 17 00:00:00 2001 From: Charlie Gettys Date: Wed, 27 Mar 2019 10:46:41 -0400 Subject: [PATCH] Add !defined check on MINIZ_USE_ALIGNED_LOADS_AND_STORES Add !defined check so that one can override MINIZ_USE_ALIGNED_LOADS_AND_STORES in case a given compiler does not support it (this issue has been seen in the wild, #assimp/assimp#2389 --- miniz.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/miniz.h b/miniz.h index 17f2c3b..90e4860 100644 --- a/miniz.h +++ b/miniz.h @@ -170,6 +170,8 @@ #define MINIZ_LITTLE_ENDIAN 0 #endif +/* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES only if not set */ +#if !defined(MINIZ_USE_UNALIGNED_LOADS_AND_STORES) #if MINIZ_X86_OR_X64_CPU /* Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient integer loads and stores from unaligned addresses. */ #define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 1 @@ -177,6 +179,7 @@ #else #define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 0 #endif +#endif #if defined(_M_X64) || defined(_WIN64) || defined(__MINGW64__) || defined(_LP64) || defined(__LP64__) || defined(__ia64__) || defined(__x86_64__) /* Set MINIZ_HAS_64BIT_REGISTERS to 1 if operations on 64-bit integers are reasonably fast (and don't involve compiler generated calls to helper functions). */