I'd imagine you'd use it like so (in more modern C):
void *memcpy(void *src, void *dst, size_t len)
{
char *rv = dst;
top:
while (len--) *dst++ =*src; /* not always a trivial body */
return(rv);
entry bcopy:
rv = dst; /* Swap args and jump to memcpy */
dst = src;
src = rv;
goto top:
}
Variations on this theme are often done in assembler for these routines, though the example is an attempt to cope with the diversity of interfaces that grew up after v6 unix was released in the world, so it's not likely this particular example inspired it...
Warner