1
0
mirror of https://github.com/cahirwpz/amigaos-gcc-2.95.3.git synced 2025-12-08 14:58:59 +00:00
Files
amigaos-gcc-2.95.3/libiberty/bcopy.c
Krystian Bacławski 698c99a82a Import original sources.
2016-04-17 14:54:11 +02:00

36 lines
711 B
C

/* bcopy -- copy memory regions of arbitary length
NAME
bcopy -- copy memory regions of arbitrary length
SYNOPSIS
void bcopy (char *in, char *out, int length)
DESCRIPTION
Copy LENGTH bytes from memory region pointed to by IN to memory
region pointed to by OUT.
BUGS
Significant speed improvements can be made in some cases by
implementing copies of multiple bytes simultaneously, or unrolling
the copy loop.
*/
void
bcopy (src, dest, len)
register char *src, *dest;
int len;
{
if (dest < src)
while (len--)
*dest++ = *src++;
else
{
char *lasts = src + (len-1);
char *lastd = dest + (len-1);
while (len--)
*(char *)lastd-- = *(char *)lasts--;
}
}