]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branch 'lzo-update/lzo-update'
authorThierry Reding <treding@nvidia.com>
Thu, 24 Oct 2013 13:02:50 +0000 (15:02 +0200)
committerThierry Reding <treding@nvidia.com>
Thu, 24 Oct 2013 13:02:50 +0000 (15:02 +0200)
lib/lzo/lzo1x_decompress_safe.c
lib/lzo/lzodefs.h

index 569985d522d518a8992929d5924b6a5062ff9e93..e3edc5f3f5ee4db5dcf6ec49acd498a9febe026f 100644 (file)
@@ -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)) {
index 6710b83ce72ed094113a23fab890b94e43fe1151..db756ccb275694134c08bb805f3ea2b575c5fef0 100644 (file)
  */
 
 
+#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))