]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libiberty/bcopy.c
Imported gcc-4.4.3
[msp430-gcc.git] / libiberty / bcopy.c
index 70fa7e328cc68f558c638493c4c537621b8a088b..f9b7a8acd5c72bbd870789f44124135bad5a06ab 100644 (file)
@@ -9,19 +9,23 @@ Copies @var{length} bytes from memory region @var{in} to region
 
 */
 
+#include <stddef.h>
+
 void
-bcopy (src, dest, len)
-  register char *src, *dest;
-  int len;
+bcopy (const void *src, void *dest, size_t len)
 {
   if (dest < src)
-    while (len--)
-      *dest++ = *src++;
+    {
+      const char *firsts = (const char *) src;
+      char *firstd = (char *) dest;
+      while (len--)
+       *firstd++ = *firsts++;
+    }
   else
     {
-      char *lasts = src + (len-1);
-      char *lastd = dest + (len-1);
+      const char *lasts = (const char *)src + (len-1);
+      char *lastd = (char *)dest + (len-1);
       while (len--)
-        *(char *)lastd-- = *(char *)lasts--;
+        *lastd-- = *lasts--;
     }
 }