Fix memcpy return value.

JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg zherczeg.u-szeged@partner.samsung.com
This commit is contained in:
Zoltan Herczeg
2016-06-24 04:02:45 -07:00
parent 388b442d10
commit 0940be57f6
+9 -9
View File
@@ -103,30 +103,30 @@ memcpy (void *s1, /**< destination */
const void *s2, /**< source */ const void *s2, /**< source */
size_t n) /**< bytes number */ size_t n) /**< bytes number */
{ {
uint8_t *dst_p = (uint8_t *) s1;
const uint8_t *src_p = (const uint8_t *) s2;
/* Aligned fast case. */ /* Aligned fast case. */
if (n >= 4 && !(((uintptr_t) s1) & 0x3) && !(((uintptr_t) s2) & 0x3)) if (n >= 4 && !(((uintptr_t) s1) & 0x3) && !(((uintptr_t) s2) & 0x3))
{ {
size_t chunks = (n >> 2); size_t chunks = (n >> 2);
uint32_t *area1_p = (uint32_t *) s1; uint32_t *u32_dst_p = (uint32_t *) dst_p;
const uint32_t *area2_p = (const uint32_t *) s2; const uint32_t *u32_src_p = (const uint32_t *) src_p;
do do
{ {
*area1_p++ = *area2_p++; *u32_dst_p++ = *u32_src_p++;
} }
while (--chunks); while (--chunks);
n &= 0x3; n &= 0x3;
s1 = area1_p; dst_p = (uint8_t *) u32_dst_p;
s2 = area2_p; src_p = (const uint8_t *) u32_src_p;
} }
uint8_t *area1_p = (uint8_t *) s1;
const uint8_t *area2_p = (const uint8_t *) s2;
while (n--) while (n--)
{ {
*area1_p++ = *area2_p++; *dst_p++ = *src_p++;
} }
return s1; return s1;