diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2013-08-01 16:03:01 +1000 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2013-08-01 16:03:01 +1000 |
commit | db9b980be56a71a3c316d744adb0c34b33a4ce1a (patch) | |
tree | 9927f2622915b4db5a433f1861debf97fe95bc02 /lib | |
parent | 22a9873c2641bdb4808e271cfeb2a30e19b096c4 (diff) | |
parent | 42b775abafafdf811ef300e869a4e1480ef1cf95 (diff) |
Merge remote-tracking branch 'lzo-update/lzo-update'
Diffstat (limited to 'lib')
-rw-r--r-- | lib/lzo/lzo1x_decompress_safe.c | 4 | ||||
-rw-r--r-- | lib/lzo/lzodefs.h | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/lib/lzo/lzo1x_decompress_safe.c b/lib/lzo/lzo1x_decompress_safe.c index 569985d522d5..e3edc5f3f5ee 100644 --- a/lib/lzo/lzo1x_decompress_safe.c +++ b/lib/lzo/lzo1x_decompress_safe.c @@ -72,9 +72,11 @@ copy_literal_run: COPY8(op, ip); op += 8; ip += 8; +# if !defined(__arm__) COPY8(op, ip); op += 8; ip += 8; +# endif } while (ip < ie); ip = ie; op = oe; @@ -159,9 +161,11 @@ copy_literal_run: COPY8(op, m_pos); op += 8; m_pos += 8; +# if !defined(__arm__) COPY8(op, m_pos); op += 8; m_pos += 8; +# endif } while (op < oe); op = oe; if (HAVE_IP(6)) { diff --git a/lib/lzo/lzodefs.h b/lib/lzo/lzodefs.h index 6710b83ce72e..db756ccb2756 100644 --- a/lib/lzo/lzodefs.h +++ b/lib/lzo/lzodefs.h @@ -12,8 +12,14 @@ */ +#if 1 && defined(__arm__) && ((__LINUX_ARM_ARCH__ >= 6) || defined(__ARM_FEATURE_UNALIGNED)) +#define CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS 1 +#define COPY4(dst, src) \ + * (u32 *) (void *) (dst) = * (const u32 *) (const void *) (src) +#else #define COPY4(dst, src) \ put_unaligned(get_unaligned((const u32 *)(src)), (u32 *)(dst)) +#endif #if defined(__x86_64__) #define COPY8(dst, src) \ put_unaligned(get_unaligned((const u64 *)(src)), (u64 *)(dst)) |