From 64ececb72fe8ccf769f4751cbd591fde650bc83a Mon Sep 17 00:00:00 2001 From: Damien George Date: Thu, 31 Dec 2015 14:11:18 +0000 Subject: [PATCH] lib/libc/string0: Use uintptr_t instead of uint32_t. This makes the code portable to non-32-bit architectures. --- lib/libc/string0.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/libc/string0.c b/lib/libc/string0.c index 8ba118b705..1b37169edd 100644 --- a/lib/libc/string0.c +++ b/lib/libc/string0.c @@ -30,7 +30,7 @@ #define likely(x) __builtin_expect((x), 1) void *memcpy(void *dst, const void *src, size_t n) { - if (likely(!(((uint32_t)dst) & 3) && !(((uint32_t)src) & 3))) { + if (likely(!(((uintptr_t)dst) & 3) && !(((uintptr_t)src) & 3))) { // pointers aligned uint32_t *d = dst; const uint32_t *s = src; @@ -80,7 +80,7 @@ void *memmove(void *dest, const void *src, size_t n) { } void *memset(void *s, int c, size_t n) { - if (c == 0 && ((uint32_t)s & 3) == 0) { + if (c == 0 && ((uintptr_t)s & 3) == 0) { // aligned store of 0 uint32_t *s32 = s; for (size_t i = n >> 2; i > 0; i--) {