]> xenbits.xensource.com Git - xen.git/commitdiff
xen/lzo: Implement COPY{4,8} using memcpy()
authorAndrew Cooper <andrew.cooper3@citrix.com>
Tue, 21 May 2024 16:08:32 +0000 (17:08 +0100)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Tue, 28 May 2024 16:26:39 +0000 (17:26 +0100)
This is simpler and easier for both humans and compilers to read.

It also addresses 6 instances of MISRA R5.3 violation (shadowing of the ptr_
local variable inside both {put,get}_unaligned()).

No change, not even in the compiled binary.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Release-acked-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
xen/common/lzo.c

index cc03f0f5547f65b851b143073fc9561d02430773..3454ce4a7e24a61ccc6d74c4996e9bd626b9b4cd 100644 (file)
  */
 
 
-#define COPY4(dst, src)    \
-        put_unaligned(get_unaligned((const u32 *)(src)), (u32 *)(dst))
-#if defined(__x86_64__)
-#define COPY8(dst, src)    \
-        put_unaligned(get_unaligned((const u64 *)(src)), (u64 *)(dst))
-#else
-#define COPY8(dst, src)    \
-        COPY4(dst, src); COPY4((dst) + 4, (src) + 4)
-#endif
+#define COPY4(dst, src) memcpy(dst, src, 4)
+#define COPY8(dst, src) memcpy(dst, src, 8)
 
 #ifdef __MINIOS__
 # include <lib.h>