diff options
author | NiLuJe <ninuje@gmail.com> | 2020-06-05 00:48:06 +0200 |
---|---|---|
committer | Hans Kristian Rosbach <hk-github@circlestorm.org> | 2020-06-09 08:29:22 +0200 |
commit | e666b3ef34d9ce323321905cd56e949488e6f508 (patch) | |
tree | e865d7ea5b35437972efe6f727f1f6fc35906448 /functable.c | |
parent | 88cdf333d76c18e30a67548331f57ef5dadedbfa (diff) |
Disable unaligned access of > 4 bytes on 32-bit arm
Diffstat (limited to 'functable.c')
-rw-r--r-- | functable.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/functable.c b/functable.c index 4ba575c..8124965 100644 --- a/functable.c +++ b/functable.c @@ -72,7 +72,9 @@ extern int32_t compare258_c(const unsigned char *src0, const unsigned char *src1 #ifdef UNALIGNED_OK extern int32_t compare258_unaligned_16(const unsigned char *src0, const unsigned char *src1); extern int32_t compare258_unaligned_32(const unsigned char *src0, const unsigned char *src1); +#ifdef UNALIGNED64_OK extern int32_t compare258_unaligned_64(const unsigned char *src0, const unsigned char *src1); +#endif #ifdef X86_SSE42_CMP_STR extern int32_t compare258_unaligned_sse4(const unsigned char *src0, const unsigned char *src1); #endif @@ -86,7 +88,9 @@ extern int32_t longest_match_c(deflate_state *const s, Pos cur_match); #ifdef UNALIGNED_OK extern int32_t longest_match_unaligned_16(deflate_state *const s, Pos cur_match); extern int32_t longest_match_unaligned_32(deflate_state *const s, Pos cur_match); +#ifdef UNALIGNED64_OK extern int32_t longest_match_unaligned_64(deflate_state *const s, Pos cur_match); +#endif #ifdef X86_SSE42_CMP_STR extern int32_t longest_match_unaligned_sse4(deflate_state *const s, Pos cur_match); #endif @@ -245,7 +249,7 @@ ZLIB_INTERNAL int32_t compare258_stub(const unsigned char *src0, const unsigned functable.compare258 = &compare258_c; #ifdef UNALIGNED_OK -# ifdef HAVE_BUILTIN_CTZLL +# if defined(UNALIGNED64_OK) && defined(HAVE_BUILTIN_CTZLL) functable.compare258 = &compare258_unaligned_64; # elif defined(HAVE_BUILTIN_CTZ) functable.compare258 = &compare258_unaligned_32; @@ -270,7 +274,7 @@ ZLIB_INTERNAL int32_t longest_match_stub(deflate_state *const s, Pos cur_match) functable.longest_match = &longest_match_c; #ifdef UNALIGNED_OK -# ifdef HAVE_BUILTIN_CTZLL +# if defined(UNALIGNED64_OK) && defined(HAVE_BUILTIN_CTZLL) functable.longest_match = &longest_match_unaligned_64; # elif defined(HAVE_BUILTIN_CTZ) functable.longest_match = &longest_match_unaligned_32; |